and thanks in advance for reviewing this request

This is my website https://www.recepti-kuvar.rs/

A recipe website, with 350+ recipes and 100+ registered users submitting new recipes every day (1000+ website visits daily)

We are using a "Food Recipes" theme from Envato marketplace on our website

The theme has very low flexibility, we are very limited by it, which is exactly the opposite to the idea of wordpress and the ability to customize everything. We can no longer match our customers' and potential marketing clients' and partners' requests and demands using that theme, so we need to change it.

The problem is that the theme uses a bunch of integrated code and shortcode for submitting and posting recipes. For example, recipes on our website aren't categorized as "Posts". They are a custom post type called "Recipe" (that, by the way, conflicted with many plugins thus far).

Also, every single recipe is created by entering 2 shortcodes into wordpress editor: [ingredients] and [method]

My question is: Which is the best way to change to a new theme we selected (http://wpthesisskins.com/newszinedemo1/ skin using a Thesis framework), so ALL recipes and users etc remain as is, without manually editing 350+ recipes to change [ingredients] and [method] shortcodes into actual ingredients and method

Kind regards, and once again thanks


  • In the open source world, paid != better than free. There are tons of great, free themes available on WordPress.org. In addition, the paid themes do not have the same restrictions as themes hosted on WordPress.org, they can have custom post types, content based short codes, etc. All things that are best left to plugins. Otherwise, you end up in a situation like you're in now where you're locked into a theme because it does a lot of non-presentation style things. Bite the bullet now, migrate to a theme that adheres to wp standards and move all that bloat into a custom utility plugin(s). Dec 26, 2014 at 21:20

1 Answer 1


You'll have some process of data migration and validation, so you can setup a staging WordPress environment somewhere on the same server (like staging.recepti-kuvar.rs). You can do the following:

  1. Create the subdomain and protect it with htpasswd;
  2. Create a copy of the living site, using Duplicator plugin (or any other that you find easier);
  3. Restore the duplicator package in the subdomain directory;
  4. Install the new theme at the staging environment and fiddle with it, moving the shortcodes and everything else from the old theme, that you'll need in order to have your content look good.
  5. Switch the post type of your recepti to posts (you can do this with SQL in phpMyAdmin or through some plugins);
  6. Once you have done all this and the staging looks and acts as the live site should - move the theme with the new code (which should be either in helper plugins or in a child theme) to the live site and switch the type of the posts the same way you did in the staging.

P.S. This is not the best process for switching a theme of a living site, but it's more of a direction that you can follow. If you don't have that many new posts every day, you can calmly work on the staging till everything is ready, them move to staging the newly registered users and posts that were made after you created staging and then use duplicator again for getting the staging back to the main domain.

NB! Be always sure to have a recent backup of your live site and an easy way to restore it!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.