wp/wp-content/plugins/option-tree/includes/ot-post-formats-api.php
changeset 5 5e2f62d02dcd
child 7 cf61fcea0001
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/wp/wp-content/plugins/option-tree/includes/ot-post-formats-api.php	Tue Jun 09 03:35:32 2015 +0200
@@ -0,0 +1,123 @@
+<?php if ( ! defined( 'OT_VERSION') ) exit( 'No direct script access allowed' );
+/**
+ * OptionTree Post Formats API
+ *
+ * This class loads all the methods and helpers specific to build a the post format metaboxes.
+ *
+ * @package   OptionTree
+ * @author    Derek Herman <derek@valendesigns.com>
+ * @copyright Copyright (c) 2014, Derek Herman
+ */
+if ( ! class_exists( 'OT_Post_Formats' ) ) {
+
+  class OT_Post_Formats {
+    
+    /**
+     * Class Constructor
+     *
+     * @return    void
+     *
+     * @access    public
+     * @since     2.3.0
+     */
+    public function __construct() {
+    
+      $this->setup_actions();
+      
+    }
+    
+    /**
+     * Setup the default filters and actions
+     *
+     * @uses add_action() To add various actions
+     * @uses add_filter() To add various filters
+     *
+     * @return  void
+     *
+     * @access  private
+     * @since   2.3.0
+     */
+    private function setup_actions() {
+      
+      // Initialize the meta boxes
+      add_action( 'admin_init',                             array( $this, 'meta_boxes'                   ), 2 );
+      
+      // Setup pings for the link & quote URLs
+      add_filter( 'pre_ping',                               array( $this, 'pre_ping_post_links'      ), 10, 3 );
+  
+    }
+  
+    /**
+     * Builds the default Meta Boxes.
+     *
+     * @return    void
+     *
+     * @access    private
+     * @since     2.3.0
+     */
+    public function meta_boxes() {
+      
+      // Exit if called outside of WP admin
+      if ( ! is_admin() )
+        return false;
+          
+      $meta_boxes = array(
+        ot_meta_box_post_format_gallery(),
+        ot_meta_box_post_format_link(),
+        ot_meta_box_post_format_quote(),
+        ot_meta_box_post_format_video(),
+        ot_meta_box_post_format_audio()
+      );
+      
+      /**
+       * Register our meta boxes using the 
+       * ot_register_meta_box() function.
+       */
+      foreach( $meta_boxes as $meta_box ) {
+      
+        ot_register_meta_box( $meta_box );
+        
+      }
+      
+    }
+    
+    /**
+     * Setup pings for the link & quote URLs
+     * 
+     * @param     array     $post_links The URLs to ping
+     * @param     array     $pung Pinged URLs
+     * @param     int       $post_id Post ID
+     * @return    array
+     *
+     * @access    public
+     * @since     2.3.0
+     */
+    public function pre_ping_post_links( $post_links, $pung, $post_id = null ) {
+      
+      $_link = get_post_meta( $post_id, '_format_link_url', true );
+      if ( ! empty( $_link ) && ! in_array( $_link, $pung ) && ! in_array( $_link, $post_links ) )
+        $post_links[] = $_link;
+      
+      $_quote = get_post_meta( $post_id, '_format_quote_source_url', true );
+      if ( ! empty( $_quote ) && ! in_array( $_quote, $pung ) && ! in_array( $_quote, $post_links ) )
+        $post_links[] = $_quote;
+      
+    }
+
+  }
+
+}
+
+/**
+ * Instantiate The Class
+ *
+ * @since 1.0
+ */
+if ( function_exists( 'ot_register_meta_box' ) ) {
+
+  new OT_Post_Formats();
+
+}
+
+/* End of file ot-post-formats-api.php */
+/* Location: ./includes/ot-post-formats-api.php */
\ No newline at end of file