Filters the path of the queried template by type.
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_templatearchive_templateattachment_templateauthor_templatecategory_templatedate_templateembed_templatefrontpage_templatehome_templateindex_templatepage_templatepaged_templateprivacypolicy_templatesearch_templatesingle_templatesingular_templatetag_templatetaxonomy_template
Parameters
$templatestring- Path to the template. See locate_template() .
More Arguments from locate_template( … $args )
Additional arguments passed to the template.
$typestring- Sanitized filename without extension.
$templatesstring[]- A list of template candidates, in descending order of priority.
Source
return apply_filters( "{$type}_template", $template, $type, $templates );
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.