summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>2015-05-01 00:40:49 +0000
committerJorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>2015-05-01 00:40:49 +0000
commitc64ce3ae8de09092f9570ab88a68fe920b0fd970 (patch)
treea9959002055a8bdff0ee46bf82ca6a2a39bf00cd /plugins/jetpack/modules/related-posts.php
parentAdd easy-table plugin, requested by hwoarang (diff)
downloadblogs-gentoo-c64ce3ae8de09092f9570ab88a68fe920b0fd970.tar.gz
blogs-gentoo-c64ce3ae8de09092f9570ab88a68fe920b0fd970.tar.bz2
blogs-gentoo-c64ce3ae8de09092f9570ab88a68fe920b0fd970.zip
Update plugins and themes to the latest versions.
Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>
Diffstat (limited to 'plugins/jetpack/modules/related-posts.php')
-rw-r--r--plugins/jetpack/modules/related-posts.php89
1 files changed, 89 insertions, 0 deletions
diff --git a/plugins/jetpack/modules/related-posts.php b/plugins/jetpack/modules/related-posts.php
new file mode 100644
index 00000000..6aac9d22
--- /dev/null
+++ b/plugins/jetpack/modules/related-posts.php
@@ -0,0 +1,89 @@
+<?php
+/**
+ * Module Name: Related Posts
+ * Module Description: Display links to your related content under posts and pages.
+ * Jumpstart Description: keep visitors engaged on your blog by highlighting relevant and new content at the bottom of each published post.
+ * First Introduced: 2.9
+ * Sort Order: 29
+ * Recommendation Order: 9
+ * Requires Connection: Yes
+ * Auto Activate: No
+ * Module Tags: Recommended
+ * Feature: Recommended, Jumpstart
+ */
+class Jetpack_RelatedPosts_Module {
+ /**
+ * Class variables
+ */
+ private static $__instance = null;
+
+ /**
+ * Singleton implementation
+ *
+ * @return object
+ */
+ public static function instance() {
+ if ( ! is_a( self::$__instance, 'Jetpack_RelatedPosts_Module' ) )
+ self::$__instance = new Jetpack_RelatedPosts_Module();
+
+ return self::$__instance;
+ }
+
+ /**
+ * Register actions and filters
+ *
+ * @uses add_action, add_filter
+ * @return null
+ */
+ private function __construct() {
+ add_action( 'jetpack_module_loaded_related-posts', array( $this, 'action_on_load' ) );
+ add_action( 'jetpack_activate_module_related-posts', array( $this, 'action_on_activate' ) );
+ }
+
+ /**
+ * This action triggers when module is activated.
+ *
+ * @uses Jetpack::init, Jetpack_Sync::reindex_needed, Jetpack_Sync::reindex_trigger
+ * @return null
+ */
+ public function action_on_activate() {
+ if ( Jetpack::init()->sync->reindex_needed() ) {
+ Jetpack::init()->sync->reindex_trigger();
+ }
+ }
+
+ /**
+ * This action triggers if the module is in an active state, load related posts and options.
+ *
+ * @uses Jetpack_RelatedPosts::init, is_admin, Jetpack::enable_module_configurable, Jetpack::module_configuration_load, Jetpack_Sync::sync_posts
+ * @return null
+ */
+ public function action_on_load() {
+ require_once 'related-posts/jetpack-related-posts.php';
+ Jetpack_RelatedPosts::init();
+
+ if ( is_admin() ) {
+ // Enable "Configure" button on module card
+ Jetpack::enable_module_configurable( __FILE__ );
+ Jetpack::module_configuration_load( __FILE__, array( $this, 'module_configuration_load' ) );
+
+ // Sync new posts
+ Jetpack_Sync::sync_posts( __FILE__ );
+ }
+ }
+
+ /**
+ * Redirect configure button to Settings > Reading
+ *
+ * @uses wp_safe_redirect, admin_url
+ * @return null
+ */
+ public function module_configuration_load() {
+ wp_safe_redirect( admin_url( 'options-reading.php#jetpack_relatedposts' ) );
+ exit;
+ }
+
+}
+
+// Do it.
+Jetpack_RelatedPosts_Module::instance();