/**
  * Prints the box content.
  *
  * @since 1.0.0
  * @param object $post    Current post object.
  * @param array  $metabox
  */
 public function callback_metabox($post, $metabox)
 {
     if (!class_exists('Cherry_Interface_Builder')) {
         return;
     }
     // open core UI wrappers
     echo '<div class="cherry-ui-core">';
     // Add an nonce field so we can check for it later.
     wp_nonce_field(plugin_basename(__FILE__), 'cherry_team_options_meta_nonce');
     $builder = new Cherry_Interface_Builder(array('name_prefix' => CHERRY_TEAM_POSTMETA, 'pattern' => 'inline', 'class' => array('section' => 'single-section')));
     foreach ($metabox['args'] as $field) {
         // Check if set the 'id' value for custom field. If not - don't add field.
         if (!isset($field['id'])) {
             continue;
         }
         $field['value'] = Cherry_Team::get_meta($post->ID, $field['id'], $field['value']);
         echo $builder->add_form_item($field);
     }
     /**
      * Fires after testimonial fields of metabox.
      *
      * @since 1.0.0
      * @param object $post                 Current post object.
      * @param array  $metabox
      * @param string CHERRY_TEAM_POSTMETA Name for 'meta_key' value in the 'wp_postmeta' table.
      */
     do_action('cherry_team_metabox_after', $post, $metabox, CHERRY_TEAM_POSTMETA);
     // close core UI wrappers
     echo '</div>';
 }
 /**
  * Get team memeber socials list
  *
  * @since  1.0.0
  * @return string
  */
 public function get_socials()
 {
     global $post;
     $meta = $this->get_meta();
     if (empty($meta['socials'])) {
         return;
     }
     $socials = $meta['socials'];
     $defaults = array('external-link' => '', 'font-class' => '', 'link-label' => '');
     $format = apply_filters('cherry_team_socials_item_format', '<div class="team-socials_item"><a href="%s" class="team-socials_link" rel="nofollow"><i class="team-socials_icon %s"></i><span class="team-socials_label">%s</span></a></div>');
     $result = '';
     foreach ($socials as $data) {
         $data = wp_parse_args($data, $defaults);
         $url = esc_url($data['external-link']);
         $icon = esc_attr($data['font-class']);
         $label = esc_attr($data['link-label']);
         $label = sprintf($label, $this->post_title());
         $result .= sprintf($format, $url, $icon, $label);
     }
     Cherry_Team::enqueue_icon_font();
     return '<div class="team-socials">' . $result . '</div>';
 }
예제 #3
0
 /**
  * Returns the instance.
  *
  * @since  1.0.0
  * @return object
  */
 public static function get_instance()
 {
     // If the single instance hasn't been set, set it now.
     if (null == self::$instance) {
         self::$instance = new self();
     }
     return self::$instance;
 }