Title: Theme Catalog
Author: trex005
Published: <strong>August 20, 2015</strong>
Last modified: August 21, 2015

---

Search plugins

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.

![](https://s.w.org/plugins/geopattern-icon/theme-catalog.svg)

# Theme Catalog

 By [trex005](https://profiles.wordpress.org/trex005/)

[Download](https://downloads.wordpress.org/plugin/theme-catalog.0.02.zip)

 * [Details](https://pcd.wordpress.org/plugins/theme-catalog/#description)
 * [Reviews](https://pcd.wordpress.org/plugins/theme-catalog/#reviews)
 *  [Installation](https://pcd.wordpress.org/plugins/theme-catalog/#installation)
 * [Development](https://pcd.wordpress.org/plugins/theme-catalog/#developers)

 [Support](https://wordpress.org/support/plugin/theme-catalog/)

## Description

Attractive front-end theme switcher/preview allowing demo of all themes, with menu
and widget handling.

[Demo Site](http://themes.tapyweb.com/theme-catalog/)

#### Usage

Add the shortcode [theme_catalog_select] to any page or post to display an attractive
list of themes available to preview

#### Shortcode Attributes

 * **errors** (true,false,null) _default:false_ – Display only themes with errors.
   true to only show errors, false to only show non errors, null to show both [Read More](https://codex.wordpress.org/Function_Reference/wp_get_themes)
 * **allowed** (true,false,’site’,’network’,null) _default:true_ – Display only 
   allowed themes [Read More](https://codex.wordpress.org/Function_Reference/wp_get_themes)
 * **screenshots** (true, false, null) _default:true_ – Display only themes that
   have screenshots. true to only show themes with screenshots, false to only show
   themes without screenshots, null to show both
 * **lazyload** (true,false,integer) _default:20_ – whether to use lazyload. true
   to always use lazyload, false to never use lazyload, integer to use lazyload 
   if at least specified amount of results are found.
 * **display_screenshot** (true,false) _default:true_ – Display screenshots
 * **display_name** (true,false) _default:true_ – Display names
 * **display_author** (true,false) _default:true_ – Display authors
 * **display_version** (true,false) _default:true_ – Display versions
 * **display_description** (true,false) _default:true_ – Display description

#### Menus

Menus can be created/mapped on a per theme basis and global menus can be created
which will be used in the event that the menus are not mapped for the selected theme.

 * **Individual Theme Menus** can be set up. To do so :
    1. Turn on “Apply in admin” under `Settings -> Theme Catalog`
    2. Use the page you have the selector on to switch to the desired theme.
    3. Go to `Appearance -> Menus` and set up menus as you wish
    4. Repeat steps 2 & 4 for all the themes you want to individually map.
    5. Turn off “Apply in admin” under `Settings -> Theme Catalog`
 * **Global Theme Menus** can be created by creating menus named “theme_catalog_menu_1”“
   theme_catalog_menu_2” etc. Menus will be populated into loaded theme in the order
   they are encountered.

#### Widgets

Widgets can only be handled on a per theme basis. To do so :

 1. Turn on “Apply in admin” under `Settings -> Theme Catalog`
 2. Use the page you have the selector on to switch to the desired theme.
 3. Go to `Appearance -> Widgets` and set up widgets as you wish
 4. Repeat steps 2 & 4 for all the themes you want to individually map.
 5. Turn off “Apply in admin” under `Settings -> Theme Catalog`

#### Issues

iThemes Builder themes and Artisteer themes (and I’m sure there are others) bypass
WordPress’ wp_nav_menu function, so can not use global menus. You must use individual
menu mapping for these.

### TO DO

 * Add ‘include’ & ‘exclude’ attributes
 * Build a tool for bulk mapping theme menus.
 * Allow sidebars (widget areas) to be created and mapped on a per theme basis or
   globally

## Screenshots

 * [[
 * A selection of themes the user can change to.

## Installation

#### The Easy Way

 1. Install and Activate from `Plugins->Add New` in WordPress
 2. Go to Step 4 in “Manually” section

#### Manually

 1. Upload `theme-catalog.zip` to the `/wp-content/plugins/` directory
 2. Unzip `theme-catalog.zip`
 3. Activate the plugin through the ‘Plugins’ menu in WordPress
 4. _Optionally_ set up menus for each theme, and/or global menus (more details under
    description)
 5. _Optionally_ set up widgets for each theme
 6. Place `[theme_catalog_select]` in your page or post

## FAQ

  My theme screenshots are not loading!

Did you specify `screenshots='false'` or `display_screenshot='false'`?

If not, there is a good chance your theme is not properly calling wp_footer(). To
solve this problem, you need to either :

 * Turn off lazy loading by adding `lazyload='false'` to your shortcode
 * load `lazyload` in your site’s header by going to `Settings -> Theme Catalog`
   and change “Lazyload in header” to “yes”.

  What is “plugin prefix” in the settings?

This allows you to change the prefix used in the shortcode, url parameters, session
variables and css classes. Changing it would reset all of your visitors back to 
your default theme, but would also require you to edit your shortcode. Unless you
are having problems you should never need to change this.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

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

Contributors

 *   [ trex005 ](https://profiles.wordpress.org/trex005/)

[Translate “Theme Catalog” into your language.](https://translate.wordpress.org/projects/wp-plugins/theme-catalog)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/theme-catalog/), check
out the [SVN repository](https://plugins.svn.wordpress.org/theme-catalog/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/theme-catalog/) 
by [RSS](https://plugins.trac.wordpress.org/log/theme-catalog/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.02

 * Fixed settings menu not showing up for non multisite admins
 * Use proper PHP open tag for compatability on more servers.

#### 0.01

Initial release

## Meta

 *  Version **0.02**
 *  Last updated **11 years ago**
 *  Active installations **10+**
 *  WordPress version ** 4.0 or higher **
 *  Tested up to **4.2.39**
 *  Language
 * [English (US)](https://wordpress.org/plugins/theme-catalog/)
 * Tags
 * [chooser](https://pcd.wordpress.org/plugins/tags/chooser/)[picker](https://pcd.wordpress.org/plugins/tags/picker/)
   [selector](https://pcd.wordpress.org/plugins/tags/selector/)[theme](https://pcd.wordpress.org/plugins/tags/theme/)
   [themes](https://pcd.wordpress.org/plugins/tags/themes/)
 *  [Advanced View](https://pcd.wordpress.org/plugins/theme-catalog/advanced/)

## Ratings

No reviews have been submitted yet.

[Add my review](https://wordpress.org/support/plugin/theme-catalog/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/theme-catalog/reviews/)

## Contributors

 *   [ trex005 ](https://profiles.wordpress.org/trex005/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/theme-catalog/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=4JLY4397X5CWG&lc=US&item_name=Tapy&no_note=0&cn=Message&no_shipping=1&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted)