Conditional Themes
Conditional Themes
Description
Conditional Themes is an API to switch the themes on certain conditions.
Usage
Write an another plugin file and use the Conditional Themes API as the example below:
add_action('plugins_loaded', 'my_conditional_themes_setup', 100);
function my_conditional_themes_setup()
{
// Switch to Twenty Eleven theme if the visitor use Internet Explorer.
Conditional_Themes_Manager::register('twentyeleven', function() {
global $is_IE;
return (bool) $is_IE;
});
// Switch to Twenty Thirteen theme if the user has administrator role.
Conditional_Themes_Manager::register('twentythirteen', function() {
return current_user_can('administrator');
});
// Switch to a custom theme if the visitor use a mobile device.
Conditional_Themes_Manager::register('mobile', 'wp_is_mobile');
}
Another example, With enabling persistent mode.
add_action('plugins_loaded', 'my_conditional_themes_setup', 100);
function my_conditional_themes_setup()
{
// Enable the switcher persistent mode.
Conditional_Themes_Manager::set_option('persistent', true);
// Switch to Twenty Sixteen theme when we being on 2016.
Conditional_Themes_Manager::register('twentysixteen', function() {
return (date('Y') == 2016);
});
// Switch to Twenty Fifteen theme when the site reaches 500 post.
Conditional_Themes_Manager::register('twentyfifteen', function() {
return ((int) wp_count_posts() > 500);
});
}
Note: You can use Code Snippets plugin to add the code snippets to your site.
Contributing
Developers can contribute to the source code on the Github Repository.
Installation
- Upload and install the plugin
- Use the plugin API to powerful your project.
Reviews
Fonctionne très bien
By sbadenis on December 6, 2018
Awesome Plugin. Neat and Accurate
By Dipak Kumar Pusti (dipakbbsr) on November 16, 2017
Awesome
By KodeBurner on October 7, 2016
Works Great
By Lafif Astahdziq (qutek) on September 3, 2016
Very cool code, thanks for dev
Thank you
By televizor on February 8, 2017
Good work!
اضافة رائعة
By abudy_iraq on February 7, 2017
السلام عليكم
اضافة راااائعة جداً
Changelog
0.6
- Better code style formatting.
0.4
- Fix updating switched theme sidebars widgets bug, props @Offereins.
- Better classes and code organization.
0.4
- Fix the switched theme sidebars widgets bug, props @joyously.
- Better functions names and code organization.
0.3
- Add a new feature allow to switch the themes persistently.
- Improve the performance by excluding the original theme from being switched.
0.2
- Cleaner code and minor fixes.
0.1
- The Initial version.