Опис
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.
Встановлення
- Upload and install the plugin
- Use the plugin API to powerful your project.
Відгуки
Учасники та розробники
“Conditional Themes” — проект з відкритим вихідним кодом. В розвиток плагіну внесли свій вклад наступні учасники:
УчасникиПерекладіть “Conditional Themes” на вашу мову.
Цікавитесь розробкою?
Перегляньте код, перегляньте сховище SVN або підпишіться на журнал розробки за допомогою RSS.
Журнал змін
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.