Add season and venue dropdowns to event edit page
This commit is contained in:
@@ -24,16 +24,11 @@ function sportspress_admin_menu( $position ) {
|
||||
$menu[ $position ] = array( '', 'read', 'separator-sportspress', '', 'wp-menu-separator sportspress' );
|
||||
endif;
|
||||
|
||||
// Remove "Add Configuration" link under SportsPress
|
||||
unset( $submenu['edit.php?post_type=sp_config'][10] );
|
||||
|
||||
// Remove "Seasons" link under Events
|
||||
unset( $submenu['edit.php?post_type=sp_event'][15] );
|
||||
|
||||
// Remove "Seasons" link under Players
|
||||
// Remove "Seasons" link from Players submenu
|
||||
unset( $submenu['edit.php?post_type=sp_player'][15] );
|
||||
|
||||
// Remove "Seasons" link under Staff
|
||||
// Remove "Seasons" link from Staff submenu
|
||||
unset( $submenu['edit.php?post_type=sp_staff'][15] );
|
||||
|
||||
}
|
||||
add_action( 'admin_menu', 'sportspress_admin_menu' );
|
||||
@@ -32,6 +32,12 @@ function sportspress_save_post( $post_id ) {
|
||||
// Update staff array
|
||||
sportspress_update_post_meta_recursive( $post_id, 'sp_staff', sportspress_array_value( $_POST, 'sp_staff', array() ) );
|
||||
|
||||
// Update season taxonomy
|
||||
wp_set_post_terms( $post_id, sportspress_array_value( $_POST, 'sp_season', 0 ), 'sp_season' );
|
||||
|
||||
// Update venue taxonomy
|
||||
wp_set_post_terms( $post_id, sportspress_array_value( $_POST, 'sp_venue', 0 ), 'sp_venue' );
|
||||
|
||||
break;
|
||||
|
||||
case ( 'sp_column' ):
|
||||
|
||||
@@ -32,7 +32,10 @@ function sportspress_event_meta_init( $post ) {
|
||||
$teams = (array)get_post_meta( $post->ID, 'sp_team', false );
|
||||
|
||||
remove_meta_box( 'submitdiv', 'sp_event', 'side' );
|
||||
remove_meta_box( 'sp_venuediv', 'sp_event', 'side' );
|
||||
|
||||
add_meta_box( 'submitdiv', __( 'Event', 'sportspress' ), 'post_submit_meta_box', 'sp_event', 'side', 'high' );
|
||||
add_meta_box( 'sp_detailsdiv', __( 'Details', 'sportspress' ), 'sportspress_event_details_meta', 'sp_event', 'side', 'high' );
|
||||
add_meta_box( 'sp_teamdiv', __( 'Teams', 'sportspress' ), 'sportspress_event_team_meta', 'sp_event', 'side', 'high' );
|
||||
if ( sizeof( $teams ) > 0 ):
|
||||
add_meta_box( 'sp_playersdiv', __( 'Players', 'sportspress' ), 'sportspress_event_players_meta', 'sp_event', 'normal', 'high' );
|
||||
@@ -41,6 +44,39 @@ function sportspress_event_meta_init( $post ) {
|
||||
add_meta_box( 'sp_articlediv', __( 'Article', 'sportspress' ), 'sportspress_event_article_meta', 'sp_event', 'normal', 'high' );
|
||||
}
|
||||
|
||||
function sportspress_event_details_meta( $post ) {
|
||||
$season_id = sportspress_get_the_term_id( $post->ID, 'sp_season', 0 );
|
||||
$venue_id = sportspress_get_the_term_id( $post->ID, 'sp_venue', 0 );
|
||||
?>
|
||||
<div>
|
||||
<p><strong><?php _e( 'Season', 'sportspress' ); ?></strong></p>
|
||||
<p class="sp-tab-select" data-sp-target="sp_teamdiv">
|
||||
<?php
|
||||
$args = array(
|
||||
'taxonomy' => 'sp_season',
|
||||
'name' => 'sp_season',
|
||||
'selected' => $season_id,
|
||||
'value' => 'term_id',
|
||||
);
|
||||
sportspress_dropdown_taxonomies( $args );
|
||||
?>
|
||||
</p>
|
||||
<p><strong><?php _e( 'Venue', 'sportspress' ); ?></strong></p>
|
||||
<p>
|
||||
<?php
|
||||
$args = array(
|
||||
'taxonomy' => 'sp_venue',
|
||||
'name' => 'sp_venue',
|
||||
'selected' => $venue_id,
|
||||
'value' => 'term_id',
|
||||
);
|
||||
sportspress_dropdown_taxonomies( $args );
|
||||
?>
|
||||
</p>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
function sportspress_event_team_meta( $post ) {
|
||||
$teams = (array)get_post_meta( $post->ID, 'sp_team', false );
|
||||
$players = (array)get_post_meta( $post->ID, 'sp_player', false );
|
||||
|
||||
@@ -3,7 +3,7 @@ function sportspress_season_term_init() {
|
||||
$name = __( 'Seasons', 'sportspress' );
|
||||
$singular_name = __( 'Season', 'sportspress' );
|
||||
$lowercase_name = __( 'season', 'sportspress' );
|
||||
$object_type = array( 'sp_event', 'sp_calendar', 'sp_team', 'sp_table', 'sp_player', 'sp_list', 'sp_staff' );
|
||||
$object_type = array( 'sp_calendar', 'sp_team', 'sp_player', 'sp_staff' );
|
||||
$labels = sportspress_get_term_labels( $name, $singular_name, $lowercase_name );
|
||||
$args = array(
|
||||
'label' => $name,
|
||||
@@ -13,11 +13,9 @@ function sportspress_season_term_init() {
|
||||
'rewrite' => array( 'slug' => 'season' )
|
||||
);
|
||||
register_taxonomy( 'sp_season', $object_type, $args );
|
||||
register_taxonomy_for_object_type( 'sp_season', 'sp_event' );
|
||||
register_taxonomy_for_object_type( 'sp_season', 'sp_calendar' );
|
||||
register_taxonomy_for_object_type( 'sp_season', 'sp_team' );
|
||||
register_taxonomy_for_object_type( 'sp_season', 'sp_player' );
|
||||
register_taxonomy_for_object_type( 'sp_season', 'sp_list' );
|
||||
register_taxonomy_for_object_type( 'sp_season', 'sp_staff' );
|
||||
}
|
||||
add_action( 'init', 'sportspress_season_term_init' );
|
||||
|
||||
Reference in New Issue
Block a user