This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Theme Switch and Preview


The plugin is great for theme development as you can tweak the template online without breaking stuff for visitors. You can also use it for presentations, to show off various templates. There is a widget and a theme cloud shortcode to make this easier.

This plugin has three basic configurations:

  • Only admin: This is useful for theme developers and to preview themes on live sites.
  • Only with passkey: Send your clients preview links. They won’t need an account on your blog for this to work.
  • Everybody: Theme switching for everybody.


The easiest way to use this plugin is to drag the widget into one of your sidebars.

There is as well the shortcode [nkthemeswitch]. Examples:

  1. [nkthemeswitch] This displays the theme switch cloud as text links.
  2. [nkthemeswitch mode=»screenshot»] This displays the switch links with screenshots.
  3. [nkthemeswitch mode=»screenshot» addname=»yes»] This displays the switch links with screenshots and the theme name.

Using the switch cloud in your theme

You can call the function nkthemeswitch_cloud() from your theme to get the theme switch cloud. Example:

if ( function_exists( 'nkthemeswitch_cloud' ) ) {
    echo nkthemeswitch_cloud( $target = '_blank', $passkey = false, $screenshot = false, $addname = false );


  • target: link target attribute
  • passkey: add the passkey to the links. This might be useful if you use passkeys.
  • screenshot: display screenshots instead of name
  • addname: add theme names to screenshots

My plugins

MU fast backend switch: Switch between your MU blog backends with one click

Visitor Movies for WordPress: Did you ever want to know what your visitors are really doing on your site? Watch them!

Custom Avatars For Comments: Your visitors will be able to choose from the avatars you upload to your website for each and every comment they make.

Better tag cloud: I was pretty unhappy with the default WordPress tag cloud widget. This one is more powerful and offers a list HTML markup that is consistent with most other widgets.

Theme switch: I like to tweak my main theme that I use on a variety of blogs. If you have ever done this you know how annoying it can be to break things for visitors of your blog. This plugin allows you to use a different theme than the one used for your visitors when you are logged in.

Zero Conf Mail: Simple mail contact form, the way I like it. No ajax, no bloat. No configuration necessary, but possible.

Move WordPress comments: This plugin adds a small form to every comment on your blog. The form is only added for admins and allows you to move comments to a different post/page and to fix comment threading.

Delete Pending Comments: This is a plugin that lets you delete all pending comments at once. Useful for spam victims.

Snow and more: This one lets you see snowflakes, leaves, raindrops, balloons or custom images fall down or float upwards on your blog.

Fireworks: The name says it all, see fireworks on your blog!

Rhyming widget: I wrote a little online rhyming dictionary. This is a widget to search it directly from one of your sidebars.


  • The configuration menu, including preview links for you or for customers (if passkeys are allowed).
  • The text theme cloud. No default CSS included in the plugin. See the demo at the theme switch and preview plugin site.
  • The screenshot theme cloud. The screenshots won't be resized or anything. See the demo at theme switch and preview plugin site.


Unzip, upload to your plugin directory, enable the plugin and configure it as needed. If you want to add the developer widget do that in your dashboard’s Design section.


Q: I need the plugin to work for everybody, not just logged in users.
A: This is possible since 0.6.0.

Q: The preview links don’t work!
A: Please check if you have some cache activated, that will most likely prevent the preview links from working. WP Super Cache only works in HALF ON mode.

Q: The previews look broken!
A: Do you use a complex theme with theme options? Some themes need to be activated for real at least once before they work.

Q: How do I exclude themes from being shown in the widget or the cloud?
A: Add Status: unpublished to the header of the theme’s style.css.

Q: I use a >= 3.0 multisite install and don’t want inactive themes to be shown on certain blogs. Anything I can do?
A: Add define( ‘NKTHEMESWITCH_LOAD_MS’, true ); to your install’s wp-config.php. Careful, this might break on upgrades as I had to copy stuff from wp-admin/ into the plugin. Not very likely but possible. I’m not sure I’ll continue to support this in the future. I probably won’t test it, so report any bugs.

Q: My site went blank when I used your plugin, what should I do?
A: Deactivate the plugin in the admin section. Remove the plugin files from your server if that doesn’t work.


Read all 4 reviews

Contributors & Developers

“Theme Switch and Preview” is open source software. The following people have contributed to this plugin.


Changelog ( 2010-07-16 )

  • Make the multisite feature really work. Hopefully.

0.9 ( 2010-07-14 )

  • Make it possible to exclude themes that aren’t activated on a multisite ( >= 3.0 ) install. Please see the FAQ for details.

0.8 ( 2010-06-12 )

  • Incompatible change in nkthemeswitch_cloud() parameters. If you call this function from your theme you’ll need to update your code.
  • Documentation update
  • Make it possible to show screenshots with theme names.
  • Bugfix for cloud with screenshots: Show text link when no screenshot exists ( 2010-05-27 )

  • Bugfix for theme cloud and unpublished themes.
  • Fix donation link
  • Update docs

0.7.4 ( 2010-05-12 )

  • Make it possible to use an unordered list for the theme cloud, thanks to Helen for the suggestion! ( 2010-04-04 )

  • Really exclude the new theme

0.7.3 ( 2010-04-02 )

  • Exclude the new WordPress 3.0 default theme as well if requested.

0.7.2 ( 2010-03-24 )

  • Add a title to the widget as requested by ukmaceman. Thanks for the suggestion!
  • Fix problems with the widget when no permalinks are used.

0.7.1 ( 2010-03-17 )

  • This release should fix the problem that theme editing isn’t possible when the plugin is active. Reported first by Lizzy, thank you!


  • Fix for when WordPress is installed into a subdirectory. Thanks Martin.
  • Add noscript submit button to theme switch dropdown widget.
  • Update docs and translations.

  • Fix the problem behind the bug, not the symptoms. Thanks again Richard!

  • Really fix the bug. And another one.

  • Fix incorrect widget URIs for the home page as reported by Richard Walters.

  • Fix incorrect preview/switch URIs as reported by melanie.

  • Don’t display unpublished themes in the cloud


  • Added option to exclude the default and classic themes from the widget and theme cloud.
  • Stay on the same blog page when switching with the widget.
  • Stay on the same blog page when switching without permalinks enabled.
  • Add icon by famfamafm to the Admin Drop Down Menu.
  • Add italian translation, thanks to Gianni!
  • Bugfixes

  • Switch links from the cloud didn’t work with pretty permalinks enabled. And switching is allowed to admins when passkeys are enabled.


  • Big rewrite, add ideas and code from Ryan Boren’s Theme Switcher plugin. His plugin is much smaller and more efficient than mine, but it offers no admin-only previews, configuration screens, shortcodes etc.
  • Theme switching for everybody, even anonymous users possible.
  • Shortcode for theme switch cloud. No default CSS included.
  • Shortcode for screenshots of all themes. No screenshot resize built-in.
  • Update german translation.


  • I18N
  • Add german translation
  • Improve security and make code more efficient.
  • Switching is only available to admins. I think the user level thing never worked, please report if it did for you.
  • Please attach patches to feature requests.


  • Fix typos
  • Fix bad upgrade bug that deletes plugin settings


  • New FAQ entries
  • Doc updates


  • Add preview links
  • Add <select> building helper function
  • Add install hook
  • Use WordPress CSS for submit buttons
  • Fix FAQ formatting


  • Added a FAQ entry


  • Sort themes alphabetically, thanks to xklaim for the suggestion


  • Doc updates, fix typo


  • Minor updates


  • Compatibility tests


  • Bugfix


  • Add a Widget, better settings page, Documentation updates


  • Documentation updates, correct version numbering


  • Ready plugin for upload at the WordPress site