apply_filters( "{$type}_template", string $template , string $type , string[] $templates )
Filters the path of the queried template by type.
Contents
Description
The dynamic portion of the hook name, $type
, refers to the filename — minus the file extension and any non-alphanumeric characters delimiting words — of the file to load.
This hook also applies to various types of files loaded as part of the Template Hierarchy.
Possible hook names include:
404_template
archive_template
attachment_template
author_template
category_template
date_template
embed_template
frontpage_template
home_template
index_template
page_template
paged_template
privacypolicy_template
search_template
single_template
singular_template
tag_template
taxonomy_template
Parameters
-
$template
string -
Path to the template. See locate_template() .
More Arguments from locate_template( ... $args )
Additional arguments passed to the template.
-
$type
string -
Sanitized filename without extension.
-
$templates
string[] -
A list of template candidates, in descending order of priority.
More Information
If you need more granular control over the template selection and loading system of WordPress, consider using template_include instead.
Source
File: wp-includes/template.php
.
View all references
return apply_filters( "{$type}_template", $template, $type, $templates );
Changelog
Version | Description |
---|---|
4.8.0 | The $type and $templates parameters were added. |
1.5.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
We can use this filter in case that we want to add and archive page for our custom taxonomy that we have created from a plugin. In this case the filter we will need is “taxonomy_template”.
Example Migrated from Codex:
The example code will load the template file “
post-type-template.php
” located in your plugins folder for any posts or pages that have the type of ‘my_post_type
‘ else uses default template.Example Migrated from Codex:
This example loads the template file
single-{post_type}-{slug}.php
(e.g.single-event-wordcamp.php
) only if the file exists, otherwise loads default template.Example Migrated from Codex:
This example loads a custom category template for categories 62, 65, and 59.
Example Migrated from Codex:
The example below will load the template file “
post-type-template.php
” located in your plugins folder for any archive page that has the type of “my_post_type
“; otherwise, uses default template.