Compatibility WordPress 4.2.2 Multisite 4.2.2 BuddyPress 2.3.2
Theme Switcher gives your users the ability to switch between themes from the front end of your site.
It also provides you with the opportunity to profile different theme designs quickly and easily. Plus, it works perfectly for any WordPress, Multisite or BuddyPress site.
Switch From Anywhere
The plugin comes complete with a handy widget that allows you to offer either a list or drop-down choice of themes.
You can also have a theme switcher right in your WordPress toolbar.
One of the coolest things about this plugin, is that it allows previews of different theme designs via nice URLs.
Give Your Clients Options
This a must have for anyone wanting to offer their users maximum flexibility of personalization, or to demonstrate to clients different layout options on a WordPress, Multisite or BuddyPress network.
You won’t find a better theme switcher available for WordPress, Multisite or BuddyPress on the web.
To Get Started:
There are 3 ways the Advanced Theme Switcher plugin can be used:
- As a widget in any sidebar.
- As a shortcode anywhere you want it.
- As a menu item in your WordPress toolbar.
Let’s take a look at each method in detail, shall we?
Using the Widget
The Theme Switcher widget enables you to simply drop a widget in any sidebar, and set the options with a few clicks.
You can set it up to display your theme selection either as a dropdown or a list, and you have full control over how the themes should be organized.
Using the Shortcode
The Advanced Theme Switcher now supports use of a shortcode. So you can place the themes listing in a post or page instead of being limited to the display with the built-in widget. As you are probably aware, widgets do not transfer between themes. So when the theme is switched you lose the widget (unless you add it to every theme you have and save them).
The basic shortcode using all default options is simply:
There are many optional parameters you can add to the shortcode to customize the output of the themes list. They are the same options as you see in the widget:
display_type – Possible values: no/false, dropdown, list. As the values imply, you can show the themes in dropdown/select or an unordered list. For example:
show_theme_parent – Possible values: yes (default) or no. This controls display of the parent theme when it also has children. If set to ‘yes’ the parent and child will be displayed. If set to ‘no’ only child themes will be displayed. Also included in the display will be base themes which do not have child themes associated. For example:
show_theme_groups – Possible values: yes (default) or no. This option is only used if the ‘show_theme_parent’ option is set as ‘yes’. If set to ‘yes’ this option will display the parent/child themes represented in a hierarchy output. Meaning the child theme will be shown indented beneath the parent theme. If set to ‘no’ the parent and child themes will be displayed in a normal output. For example:
[adv_theme_switcher show_theme_parent='yes' show_theme_groups='yes']
show_theme_parent_folder – Possible values: yes (default) or no. This option depends on how your themes are organized within the /wp-content/themes/ directory. WordPress allows you to nest your themes into sub-directories. So for example you may group your themes into sub-directories like /wp-content/themes/Free, /wp-content/themes/Premium. WordPress only supports one level of sub-directory. If you have your themes organized within sub-directories and this option is set to ‘yes’ the plugin will display the output with an outer level of the hierarchy. The sub-directory name will be used as the label for this outer level. For example:
show_theme_version – Possible values: yes (default) or no. When set to ‘yes’ this will include the theme version as part of the theme name. If set to ‘no’ the version will not be shown. For example:
show_theme_parent_filter – Value: theme directory text. Using this option you can limit the output of the themes to a partial listing. For example if your themes are organized into sub-directories (see notes on ‘show_theme_parent_folder’ option) and one of the sub-directories is named ‘Free’ then setting this option to ‘Free’ will show only themes within that sub-directory. Also, you can set this option to be a specific parent theme. As a second example assume you have a number of child themes based on the WordPress TwentyThirteen theme. You can set this option to ‘twentythirteen’ and the parent and any child themes only will be displayed. (This option is not available in the widget.) For example:
Theme switcher in the WordPress toolbar
Yep, you can have a theme switcher right in your WordPress toolbar too!
To get the theme switcher in your WordPress toolbar, you just need to add a simple define to your wp-config.php file.
The define as shown above will output the theme switcher with the default settings. But you can use the same shortcode options detailed above to customize the option=value pairs and control how the Advanced Theme Switcher outputs the information.
Note that when using the theme switcher in the WordPress toolbar, an additional value can be specified for the display_type option: menu. And an additional option can be defined:
display_type_sub – Possible values: dropdown (default), menu. For example, let’s show the sub-menu items in a dropdown instead of sub-menu items.
Note the difference in how the optional parameters are added to the define in wp-config.php. Each option should be separated by an ampersand (&), and should not be enclosed in quote marks.
Setting custom default options
You can also set your own default options in your wp-config.php by adding this define, and adjusting the values for each option:
This means for widgets and shortcode this will be the default option set used. You can then override these default options via the local shortcode or widget options.
We hope you and your users enjoy the freedom of viewing your site in any theme you have! If you run into any issues, just head on over to the forums. Our stellar support team (and members!) are standing by to help you get things up and running smoothly.