Here’s an example that “abuses” the tag description field to store a template name for the tag. We use the tag_template
filter to get the tag description if it exists and include a template file with the description as part of the name. You could extend this to whitelist specific template names so typos don’t result in trying to load a file that doesn’t exist:
function wpd_tag_template( $templates="" ){
$tag = get_queried_object();
if( !empty( $tag->description ) ){
$templates = locate_template( 'custom-tag-' . $tag->description . '.php', false );
}
return $templates;
}
add_filter( 'tag_template', 'wpd_tag_template' );
So for example the description contains template-1
, WordPress will load the file custom-tag-template-1.php
for this tag.
Related Posts:
- Menu items description? Custom Walker for wp_nav_menu()
- How to define and link full path to css located at a random folder on header.php
- Sizing screenshot.png without losing aspect ratio
- Software for WordPress Theme and Plugin Development? [closed]
- When to use is_home() vs is_front_page()?
- What is the preferred way to add custom javascript files to the site?
- Get the blog page URL set in Options
- How to create .pot files with POedit?
- How do I get the theme URL in PHP?
- Why when I submit a form in wordpress it loads a 404 page though URL is correct
- What is the constant WP_USE_THEMES for?
- Worthwhile to restrict direct access of theme files?
- How Do I Protect My Premium WordPress App Theme from Copying?
- How to detect mobile devices and present them a specific theme?
- Using wp_add_inline_style without a stylesheet
- How to add posts to custom menus?
- WordPress Theme Preview Image
- How To extend WP_Customize_Control
- What is the difference between front-page.php and home.php? [duplicate]
- How can I get page slug
- Does the functions.php file ever get called during an AJAX call? Debug AJAX
- When to use _e and __ for the translation?
- What is a Theme textdomain?
- How to show a custom meta box on the “Quick Edit” screen?
- How to add CSS class to custom logo?
- How to add custom css file in theme?
- How important is it to enqueue a theme’s stylesheet?
- CSS not updating in browser when I change it
- Display Search Result Count
- wp_nav_menu(), how to change class?
- theme path in javascript file
- Is wp_is_mobile() effective?
- Display Menu Name using wp_nav_menu
- Making update notification functionality for my themes
- What questions do you ask when asked to give an estimate on theme development?
- How to remove dashicons.min.css from frontend?
- How do I remove a pre-existing customizer setting?
- Minimum Template Files for Theme Development
- What’s the difference between home.php and index.php?
- pass object/JSON to wp_localize_script
- get_template_part vs action hooks in themes
- Theme Activate Hook
- Solutions for generating dynamic javascript / CSS
- wp_redirect() – headers already sent
- Can I create my own “Recent Posts” widget or customize the existing one?
- Custom single template for a specific category
- how can I add an icon/image for a child theme?
- How can I add a URL field to the attachments window?
- The the_post_thumbnail without srcset?
- The proper way to include/require PHP files in WordPress
- Get the first image from post content (eg.: hotlinked images)
- after_setup_theme always runs
- When to use add_action(‘init’) vs add_action(‘wp_enqueue_scripts’)
- Getting failure when using filemtime() with wp_enqueue_style
- Do I actually need to link my theme’s style.css in the theme files
- Why is wp_head() creating a top margin at the top of my theme header?
- How to store widget fields data as an array?
- How do I add version control to my workflow?
- Using classes instead of global functions in functions.php
- WordPress API Menu/Submenu Order
- How can I display a menu on certain pages only?
- Enqueue a stylesheet for login page and make it appear in head element
- Adding a div to wrap widget content after the widget title
- How to insert a logo in the header?
- How to set permalink structure via functions.php
- What is $post_id? is it a global variable in WordPress?
- How to override pluggable function in theme?
- How to move page template files like page-{slug}.php to a sub-directory?
- WooCommerce shop page to use my custom template [closed]
- Theme customizer – settings order
- What is the difference between wp_register_sidebar_widget and register_widget?
- Should we use get_template_part() in functions files instead of include_once?
- Reset positions of metaboxes in admin
- CSS classes for theme
- “Quick Edit” > update clears out my custom meta values
- How to enqueue script if widget is displayed on page?
- Custom Image section in Customizer
- A way to automatically install pages on theme install?
- Get entered value of customiser field for live preview
- Add custom classes to anchor in wp_nav_menu
- How to remove search bar from a wordpress theme? [closed]
- Upgrade from 5.0.4 to 5.1.1 causes $theme to be null
- Bestway To Define Theme and Plugin path and url
- Is there a has_more_tag() method or equivalent?
- With WordPress themes, where do I store the images and files relatively?
- Form to Add Posts to Custom Post Type
- What are the advantages and disadvantages of Option Tree over the Customization API?
- Should `get_template_directory_uri()` be escaped?
- How do I add settings to the Background Options Page?
- Can a theme be built in React?
- Best practices for monitoring the need for future updates on a theme that I developed?
- Get url of thumbnail from the media uploader
- Are content.php and content-single.php the same?
- My child theme doesn’t work Error: “The parent theme is missing. Please install your parent theme”
- Import media to online WordPress from local development
- How to add a checkbox element to attachments editor with example
- Generating CSS Files Dynamically Using PHP Scripts?
- Auto get_header and get_footer on every template?
- Customize WordPress>Error Page
- Add Caret to Menu Items with Sub-Menus in WordPress Theme