ThemePerPost

This plugin lets use a different theme for any Post or Page.

Author:Steve Claridge (profile at wordpress.org)
WordPress version required:2.0
WordPress version tested:2.9.2
Plugin version:1.1.1
Added to WordPress repository:07-01-2010
Last updated:14-01-2010
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
Rating, %:100
Rated by:1
Plugin URI:http://www.steveify.com/themeperpost
Total downloads:4 950
Active installs:70+
plugin download
Click to start download

This plugin lets use a different theme for any Post or Page. You can create a Custom Field that contains a theme name on one or more Posts or Pages and this plugin will switch WordPress to use that theme for only those Posts or Pages.

Example of setting theme for one Post:

  1. Upload the theme you want to use for your post - let's say it's called 'coolstuff'.
  2. Write your post.
  3. Add a Custom Field to the post called 'themeperpost' and give it a value of 'coolstuff' (not including the quotes).
  4. Save your post.

If you are creating a small custom theme purely to style a Post or Page then you do not need to create many files within the theme. For styling a Post you only need a file in your theme directory called 'single.php', for styling a Page you only need 'page.php - this fits with the standard WordPress file names for themes. There's an example theme at http://www.steveify.com/themeperpost/.

If you want to use an existing theme with this plugin then you will unfortunately have to make a few small changes to the theme before it will work. The changes are:

  1. Replace get_header() call with themeperpost_get_header().
  2. Replace get_sidebar() call with themeperpost_get_sidebar().
  3. Replace get_footer() call with themeperpost_get_footer().

This is annoying but unavoidable.