From b50855798d1894ac44b2e34fae094ec65dc9132f Mon Sep 17 00:00:00 2001 From: Brian Miyaji Date: Fri, 5 Sep 2014 17:40:50 +1000 Subject: [PATCH] Automate event details dropdowns --- .../class-sp-meta-box-event-details.php | 88 ++++++------------- 1 file changed, 25 insertions(+), 63 deletions(-) diff --git a/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-details.php b/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-details.php index 39bc9070..5800a9da 100644 --- a/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-details.php +++ b/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-details.php @@ -20,9 +20,7 @@ class SP_Meta_Box_Event_Details { */ public static function output( $post ) { $minutes = get_post_meta( $post->ID, 'sp_minutes', true ); - $league_id = sp_get_the_term_id( $post->ID, 'sp_league', 0 ); - $season_id = sp_get_the_term_id( $post->ID, 'sp_season', 0 ); - $venue_id = sp_get_the_term_id( $post->ID, 'sp_venue', 0 ); + $taxonomies = apply_filters( 'sportspress_event_taxonomies', array( 'sp_league' => null, 'sp_season' => null, 'sp_venue' => 'sp_event' ) ); ?>

@@ -31,59 +29,26 @@ class SP_Meta_Box_Event_Details {

-
-

-

- 'sp_league', - 'name' => 'sp_league', - 'class' => 'sp-has-dummy', - 'selected' => $league_id, - 'values' => 'term_id', - 'show_option_none' => __( '-- Not set --', 'sportspress' ), - ); - if ( ! sp_dropdown_taxonomies( $args ) ): - sp_taxonomy_adder( 'sp_league', 'sp_team', __( 'Add New', 'sportspress' ) ); - endif; - ?> -

-
-
-

-

- 'sp_season', - 'name' => 'sp_season', - 'class' => 'sp-has-dummy', - 'selected' => $season_id, - 'values' => 'term_id', - 'show_option_none' => __( '-- Not set --', 'sportspress' ), - ); - if ( ! sp_dropdown_taxonomies( $args ) ): - sp_taxonomy_adder( 'sp_season', 'sp_team', __( 'Add New', 'sportspress' ) ); - endif; - ?> -

-
-
-

-

- 'sp_venue', - 'name' => 'sp_venue', - 'selected' => $venue_id, - 'values' => 'term_id', - 'show_option_none' => __( '-- Not set --', 'sportspress' ), - ); - if ( ! sp_dropdown_taxonomies( $args ) ): - sp_taxonomy_adder( 'sp_venue', 'sp_event', __( 'Add New', 'sportspress' ) ); - endif; - ?> -

-
+ $post_type ): $obj = get_taxonomy( $taxonomy ); if ( $obj ): ?> +
+

labels->singular_name; ?>

+

+ $taxonomy, + 'name' => $taxonomy, + 'class' => 'sp-has-dummy', + 'selected' => sp_get_the_term_id( $post->ID, $taxonomy, 0 ), + 'values' => 'term_id', + 'show_option_none' => __( '-- Not set --', 'sportspress' ), + ); + if ( ! sp_dropdown_taxonomies( $args ) ): + sp_taxonomy_adder( $taxonomy, $post_type, $obj->labels->add_new_item ); + endif; + ?> +

+
+ null, 'sp_season' => null, 'sp_venue' => 'sp_event' ) ); + foreach ( $taxonomies as $taxonomy => $post_type ): + wp_set_post_terms( $post_id, sp_array_value( $_POST, $taxonomy, -1 ), $taxonomy ); + endforeach; } } \ No newline at end of file