Filter Hooks
Filter hooks available in SportsPress. These hooks use WordPress's apply_filters() function and are confirmed present in the plugin source.
Variable placeholders used throughout:
(post_type)—event,calendar,team,table,player,list,staff,directory,sponsor(taxonomy)—league,season,venue,position,role(tab)—general,events,teams,players,staff,branding,league-menu,sponsors,text,configure
Frontend Filters
Hook | Description |
| Add stylesheet entries to the core frontend enqueue list |
| Change the template injection priority for a specific post type (default: 10) |
| Filter template parts as they are being located and loaded |
| Filter the resolved template path before it is displayed |
| Filter the wrapper element around shortcode output |
Preset and Data Filters
Hook | Description |
| Filter the sports presets available in the settings dropdown |
| Filter the country options available in nationality selectors |
| Filter the continent groupings in country selectors |
| Filter the post type format options |
| Filter the status options in dropdowns |
| Filter the date range options in dropdowns |
| Filter the date format options in dropdowns |
| Filter the time format options in dropdowns |
| Filter the permalink slugs generated by SportsPress |
| Filter the post types associated with a specific taxonomy |
| Filter the arguments used when registering a post type |
Conditional Filters
Hook | Description |
| Boolean identifying whether current page is a SportsPress post type |
| Array of all SportsPress post type slugs |
| Array of primary SP post types ( |
| Array of secondary SP post types (calendars, tables, lists, etc.) |
| Array of post types that support CSV import |
| Array identifying SportsPress configuration post types |
| Array of all SportsPress taxonomy slugs |
Settings Filters
Hook | Description |
| Filter the array of settings tabs |
| Filter settings pages before core tabs are added |
| Filter settings pages after core tabs are added |
| Filter options displayed in a specific settings tab |
| Filter the columns displayed in admin list view for a post type |
Template Registration Filters
These filters are used to register additional templates and settings sections:
Hook | Description |
| Register additional template sections for a post type |
| Register new sections on event pages (used by Pro modules) |
| Inject additional rows into the Events settings tab |
| Inject additional rows into the Teams settings tab |
| Inject additional rows into the Players settings tab |
| Inject additional rows into the Staff settings tab |
| Add entries to the Text settings tab |
| Filter the available calendar feed types |
Data Filters
Hook | Description |
| Filter the query arguments used to fetch players for a list |
| Filter the player array returned for a player list |
| Filter event query arguments when fetching player data |
| Filter the season IDs used to segment player statistics |
| Filter a performance value before it is added to the total |
| Filter placeholder values in performance tables |
| Filter the full set of career total placeholders |
| Filter event query arguments when fetching team data |
| Filter the icon output for a player performance column |
| Filter which event formats count as competitive (default: |
Usage Examples
// Add a custom stylesheet to the SportsPress enqueue list
add_filter( 'sportspress_enqueue_styles', function( $styles ) {
$styles['my-sportspress-style'] = array(
'src' => get_stylesheet_directory_uri() . '/css/sportspress-custom.css',
'deps' => array( 'sportspress-general' ),
'version' => '1.0.0',
'media' => 'all',
);
return $styles;
});// Move team content to render later in the_content
add_filter( 'sportspress_team_content_priority', function( $priority ) {
return 20;
});// Add a custom sport preset
add_filter( 'sportspress_get_presets', function( $presets ) {
$presets['my-sport'] = array(
'name' => 'My Sport',
// ... preset data
);
return $presets;
});// Add a custom row to the Events settings tab
add_filter( 'sportspress_event_settings', function( $settings ) {
$settings[] = array(
'title' => __( 'My Custom Option', 'my-plugin' ),
'id' => 'sp_my_custom_option',
'type' => 'checkbox',
'default' => 'yes',
);
return $settings;
});
Last updated: April 2026
