Add officials templates
This commit is contained in:
@@ -44,6 +44,7 @@ class SportsPress_Officials {
|
|||||||
add_filter( 'sportspress_meta_boxes', array( $this, 'add_meta_boxes' ) );
|
add_filter( 'sportspress_meta_boxes', array( $this, 'add_meta_boxes' ) );
|
||||||
add_filter( 'sportspress_calendar_columns', array( $this, 'calendar_columns' ) );
|
add_filter( 'sportspress_calendar_columns', array( $this, 'calendar_columns' ) );
|
||||||
add_filter( 'sportspress_after_event_template', array( $this, 'add_event_template' ), 30 );
|
add_filter( 'sportspress_after_event_template', array( $this, 'add_event_template' ), 30 );
|
||||||
|
add_filter( 'sportspress_event_options', array( $this, 'add_event_options' ) );
|
||||||
add_filter( 'sportspress_screen_ids', array( $this, 'screen_ids' ) );
|
add_filter( 'sportspress_screen_ids', array( $this, 'screen_ids' ) );
|
||||||
add_filter( 'sportspress_post_types', array( $this, 'add_post_type' ) );
|
add_filter( 'sportspress_post_types', array( $this, 'add_post_type' ) );
|
||||||
add_filter( 'sportspress_primary_post_types', array( $this, 'add_post_type' ) );
|
add_filter( 'sportspress_primary_post_types', array( $this, 'add_post_type' ) );
|
||||||
@@ -413,6 +414,25 @@ class SportsPress_Officials {
|
|||||||
) );
|
) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add event options.
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function add_event_options( $options ) {
|
||||||
|
$options[] = array(
|
||||||
|
'title' => __( 'Officials', 'sportspress' ),
|
||||||
|
'id' => 'sportspress_event_officials_format',
|
||||||
|
'default' => 'table',
|
||||||
|
'type' => 'radio',
|
||||||
|
'options' => array(
|
||||||
|
'table' => __( 'Table', 'sportspress' ),
|
||||||
|
'list' => __( 'List', 'sportspress' ),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
return $options;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add screen ids.
|
* Add screen ids.
|
||||||
*
|
*
|
||||||
|
|||||||
35
templates/event-officials-list.php
Normal file
35
templates/event-officials-list.php
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Event Officials List
|
||||||
|
*
|
||||||
|
* @author ThemeBoy
|
||||||
|
* @package SportsPress/Templates
|
||||||
|
* @version 2.5
|
||||||
|
*/
|
||||||
|
|
||||||
|
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
|
|
||||||
|
$scrollable = get_option( 'sportspress_enable_scrollable_tables', 'yes' ) == 'yes' ? true : false;
|
||||||
|
?>
|
||||||
|
<div class="sp-template sp-template-event-officials sp-template-details">
|
||||||
|
<h4 class="sp-table-caption"><?php _e( 'Officials', 'sportspress' ); ?></h4>
|
||||||
|
<div class="sp-list-wrapper">
|
||||||
|
<dl class="sp-event-officials">
|
||||||
|
<?php
|
||||||
|
foreach ( $labels as $key => $label ) {
|
||||||
|
$appointed_officials = (array) sp_array_value( $data, $key, array() );
|
||||||
|
if ( empty( $appointed_officials ) ) continue;
|
||||||
|
|
||||||
|
echo '<dt>' . $label . '</dt>';
|
||||||
|
|
||||||
|
foreach ( $appointed_officials as $official_id => $official_name ) {
|
||||||
|
if ( $link_officials && sp_post_exists( $official_id ) ) {
|
||||||
|
$official_name = '<a href="' . get_post_permalink( $official_id ) . '">' . $official_name . '</a>';
|
||||||
|
}
|
||||||
|
echo '<dd>' . $official_name . '</dd>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
43
templates/event-officials-table.php
Normal file
43
templates/event-officials-table.php
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Event Officials Table
|
||||||
|
*
|
||||||
|
* @author ThemeBoy
|
||||||
|
* @package SportsPress/Templates
|
||||||
|
* @version 2.5
|
||||||
|
*/
|
||||||
|
|
||||||
|
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
|
|
||||||
|
$scrollable = get_option( 'sportspress_enable_scrollable_tables', 'yes' ) == 'yes' ? true : false;
|
||||||
|
?>
|
||||||
|
<div class="sp-template sp-template-event-officials">
|
||||||
|
<h4 class="sp-table-caption"><?php _e( 'Officials', 'sportspress' ); ?></h4>
|
||||||
|
<div class="sp-table-wrapper">
|
||||||
|
<table class="sp-event-officials sp-data-table<?php echo $scrollable ? ' sp-scrollable-table' : ''; ?>">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<?php
|
||||||
|
foreach ( $labels as $label ) {
|
||||||
|
echo '<th class="data-name">' . $label . '</th>';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<?php
|
||||||
|
foreach ( $data as $appointed_officials ) {
|
||||||
|
foreach ( $appointed_officials as $official_id => $official_name ) {
|
||||||
|
if ( $link_officials && sp_post_exists( $official_id ) ) {
|
||||||
|
$appointed_officials[ $official_id ] = '<a href="' . get_post_permalink( $official_id ) . '">' . $official_name . '</a>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
echo '<td class="data-name">' . implode( '<br>', $appointed_officials ) . '</td>';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
*
|
*
|
||||||
* @author ThemeBoy
|
* @author ThemeBoy
|
||||||
* @package SportsPress/Templates
|
* @package SportsPress/Templates
|
||||||
* @version 1.4
|
* @version 2.5
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||||
@@ -24,38 +24,21 @@ if ( empty( $data ) ) return;
|
|||||||
$labels = $data[0];
|
$labels = $data[0];
|
||||||
unset( $data[0] );
|
unset( $data[0] );
|
||||||
|
|
||||||
$scrollable = get_option( 'sportspress_enable_scrollable_tables', 'yes' ) == 'yes' ? true : false;
|
|
||||||
$link_officials = get_option( 'sportspress_link_officials', 'no' ) == 'yes' ? true : false;
|
$link_officials = get_option( 'sportspress_link_officials', 'no' ) == 'yes' ? true : false;
|
||||||
?>
|
$format = get_option( 'sportspress_event_officials_format', 'table' );
|
||||||
|
|
||||||
<div class="sp-template sp-template-event-officials">
|
switch ( $format ):
|
||||||
<h4 class="sp-table-caption"><?php _e( 'Officials', 'sportspress' ); ?></h4>
|
case 'list':
|
||||||
|
sp_get_template( 'event-officials-list.php', array(
|
||||||
<div class="sp-table-wrapper">
|
'labels' => $labels,
|
||||||
<table class="sp-event-officials sp-data-table<?php echo $scrollable ? ' sp-scrollable-table' : ''; ?>">
|
'data' => $data,
|
||||||
<thead>
|
'link_officials' => $link_officials,
|
||||||
<tr>
|
) );
|
||||||
<?php
|
break;
|
||||||
foreach ( $labels as $label ) {
|
default:
|
||||||
echo '<th class="data-name">' . $label . '</th>';
|
sp_get_template( 'event-officials-table.php', array(
|
||||||
}
|
'labels' => $labels,
|
||||||
?>
|
'data' => $data,
|
||||||
</tr>
|
'link_officials' => $link_officials,
|
||||||
</thead>
|
) );
|
||||||
<tbody>
|
endswitch;
|
||||||
<tr>
|
|
||||||
<?php
|
|
||||||
foreach ( $data as $appointed_officials ) {
|
|
||||||
foreach ( $appointed_officials as $official_id => $official_name ) {
|
|
||||||
if ( $link_officials && sp_post_exists( $official_id ) ) {
|
|
||||||
$appointed_officials[ $official_id ] = '<a href="' . get_post_permalink( $official_id ) . '">' . $official_name . '</a>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
echo '<td class="data-name">' . implode( '<br>', $appointed_officials ) . '</td>';
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
Reference in New Issue
Block a user