/** * register meta or meta_groups * * @deprecated 4.3 * * @param string $meta * @param array $args * * @return bool */ public static function register($meta_id, $args = array()) { global $_tribe_meta_factory; $defaults = array('wrap' => array('before' => '<div class="%s">', 'after' => '</div>', 'label_before' => '<label>', 'label_after' => '</label>', 'meta_before' => '<div class="%s">', 'meta_separator' => '', 'meta_after' => '</div>'), 'classes' => array('before' => array('tribe-meta'), 'meta_before' => array('tribe-meta-value')), 'register_type' => 'meta', 'register_overwrite' => false, 'register_callback' => null, 'filter_callback' => null, 'callback' => null, 'meta_value' => null, 'label' => ucwords(preg_replace('/[_-]/', ' ', $meta_id)), 'show_on_meta' => true, 'priority' => 100); // before we merge args and defaults lets play nice with the template if (!empty($args['wrap'])) { $args['wrap'] = wp_parse_args($args['wrap'], $defaults['wrap']); } $args = wp_parse_args($args, $defaults); // setup default meta ids placeholder for meta_group registration if ($args['register_type'] == 'meta_group' && empty($args[self::META_IDS])) { $args[self::META_IDS] = array(); } do_action('tribe_meta_factory_register', $meta_id, $args); // check if we should overwrite the existing registration args if set if (isset($_tribe_meta_factory->{$args['register_type']}[$meta_id]) && !$args['register_overwrite']) { return false; // otherwise merge existing args with new args and reregister } else { if (isset($_tribe_meta_factory->{$args['register_type']}[$meta_id])) { $args = wp_parse_args($args, $_tribe_meta_factory->{$args['register_type']}[$meta_id]); } } $_tribe_meta_factory->{$args['register_type']}[$meta_id] = $args; // associate a meta item to a meta group(s) isset if ($args['register_type'] == 'meta' && !empty($args['group'])) { foreach ((array) $args['group'] as $group) { // if group doesn't exist - then register it before proceeding if (!self::check_exists($group, 'meta_group')) { tribe_register_meta_group($group); // if the meta_id has already been added to the group move onto the next one } elseif (in_array($meta_id, $_tribe_meta_factory->meta_group[$group][self::META_IDS])) { continue; } $_tribe_meta_factory->meta_group[$group][self::META_IDS][] = $meta_id; } } // let the request know if we are successful for registering return true; }
/** * Register Meta: Venue Address * * @group tribe_event_venue */ tribe_register_meta('tribe_event_venue_address', array('classes' => array('meta_before' => array('location')), 'priority' => 30, 'label' => __('Address:', 'tribe-events-calendar'), 'filter_callback' => array('Tribe_Register_Meta', 'venue_address'), 'group' => 'tribe_event_venue')); /** * Register Meta: Venue Website * * @group tribe_event_venue */ tribe_register_meta('tribe_event_venue_website', array('classes' => array('meta_before' => array('url')), 'label' => __('Website:', 'tribe-events-calendar'), 'priority' => 40, 'callback' => 'tribe_get_venue_website_link', 'group' => 'tribe_event_venue')); /** * Register Meta Group: Event Organizer */ tribe_register_meta_group('tribe_event_organizer', array('label' => __('Organizer', 'tribe-events-calendar'), 'classes' => array('before' => array('tribe-events-meta-group tribe-events-meta-group-organizer', 'vcard'), 'label_before' => array('tribe-events-single-section-title')))); /** * Register Meta: Organizer Name (author) * * @group tribe_event_organizer */ tribe_register_meta('tribe_event_organizer_name', array('classes' => array('meta_before' => array('fn', 'org')), 'label' => '', 'priority' => 10, 'filter_callback' => array('Tribe_Register_Meta', 'organizer_name'), 'group' => 'tribe_event_organizer')); /** * Register Meta: Organizer Phone * * @group tribe_event_organizer */ tribe_register_meta('tribe_event_organizer_phone', array('classes' => array('meta_before' => array('tel')), 'label' => __('Phone:', 'tribe-events-calendar'), 'priority' => 20, 'callback' => 'tribe_get_organizer_phone', 'group' => 'tribe_event_organizer')); /** * Register Meta: Organizer Email *
public static function custom_meta($meta_id) { global $_tribe_meta_factory; $fields = tribe_get_custom_fields(get_the_ID()); $custom_meta = ''; foreach ($fields as $label => $value) { $custom_meta .= Tribe_Meta_Factory::template($label, $value, $meta_id); } return apply_filters('tribe_event_pro_meta_custom_meta', $custom_meta); } } /** * Register Meta Group: Event Custom Meta * * @todo remove in 3.7 */ tribe_register_meta_group('tribe_event_group_custom_meta', array('label' => __('Other', 'tribe-events-calendar-pro'), 'classes' => array('before' => array('tribe-events-meta-group tribe-events-meta-group-other'), 'label_before' => array('tribe-events-single-section-title')))); /** * Register Meta: Event Custom Meta * * @todo remove in 3.7 * @group tribe_event_custom_meta */ tribe_register_meta('tribe_event_custom_meta', array('label' => '', 'priority' => 60, 'filter_callback' => array('TribeEventsPro_SingleEventMeta', 'custom_meta'), 'group' => 'tribe_event_group_custom_meta')); /** * Register Meta: Event Recurrence Description * * @todo remove in 3.7 * @group tribe_event_custom_meta */ tribe_register_meta('tribe_event_custom_recurrence_description', array('label' => __('Recurrence Pattern:', 'tribe-events-calendar-pro'), 'priority' => 15, 'wrap' => array('before' => '', 'after' => '', 'label_before' => '<dt>', 'label_after' => '</dt>', 'meta_before' => '<dd class="%s">', 'meta_after' => '</dd>'), 'filter_callback' => array('TribeEventsPro_SingleEventMeta', 'custom_recurrence_description'), 'group' => 'tribe_event_details'));