/** * 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>'; }
/** * 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; }