=== Conditional Themes === Contributors: alex-ye Tags: theme, themes, theme-switcher, switch, api Requires at least: 3.4 Tested up to: 5.2.2 Stable tag: 0.6 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html A simple API to switch the themes on certain conditions. == 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](https://wordpress.org/plugins/code-snippets) plugin to add the code snippets to your site. = Contributing = Developers can contribute to the source code on the [Github Repository](https://github.com/nash-ye/WP-Conditional-Themes). == Installation == 1. Upload and install the plugin 2. Use the plugin API to powerful your project. == 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.