theme_templates
Filters list of page templates for a theme.
Usage
add_filter( 'theme_templates', 'wp_kama_theme_templates_filter', 10, 4 ); /** * Function for `theme_templates` filter-hook. * * @param string[] $post_templates Array of template header names keyed by the template file name. * @param WP_Theme $theme The theme object. * @param WP_Post|null $post The post being edited, provided for context, or null. * @param string $post_type Post type to get the templates for. * * @return string[] */ function wp_kama_theme_templates_filter( $post_templates, $theme, $post, $post_type ){ // filter... return $post_templates; }
- $post_templates(string[])
- Array of template header names keyed by the template file name.
- $theme(WP_Theme)
- The theme object.
- $post(WP_Post|null)
- The post being edited, provided for context, or null.
- $post_type(string)
- Post type to get the templates for.
Changelog
Since 4.9.6 | Introduced. |
Where the hook is called
theme_templates
wp-includes/class-wp-theme.php 1412
$post_templates = (array) apply_filters( 'theme_templates', $post_templates, $this, $post, $post_type );