We installed and configured a new theme on our staging site and I wanted to know what the best strategy is for migrating that new theme to our production site.

We're using git so normally I would just pull the new version on our production site, but with the new theme there have been a lot of changes in the database, mainly new static blocks, but also edits to existing blocks and CMS pages as well as configuration changes.

How do I migrate these changes to the production site, keeping in mind that new products and orders have been made since we branched the staging database?

Right now I'm thinking we should export all of the products, orders and customers from our production site to the staging site, and the staging site will become the new production site. Is there an issue with this approach or is there a better way to handle this migration?

  • May I know how did you do a cart2cart transfer? I'm looking into the best way for a theme change too. Dec 15, 2015 at 2:34
  • @Aftab I didn't end up using cart2cart. What I ended up doing was pushing up the new theme, but leaving the old one enabled. I was able to configure the new theme while the old one was still active. Once that was complete I moved over the new and updated content manually and then activated the new theme. There was an interim period where some things on the site didn't look quite right while I was moving things over manually. The only alternative would be to write a script that would handle the migration, but that wasn't worth the effort in this case. Dec 15, 2015 at 18:50

2 Answers 2


It sounds like this is a fairly large redesign - my approach would be to take the site offline for an hour, migrate and test, and bring the site back up. This is how it's done in retail, and how it should be done in online commerce.

Re-exporting products is overly cautious and will likely introduce all kinds of new issues; such as data edited directly on production without being introduced to staging first being overwritten.

It shouldn't be difficult to identify all of the new and required static blocks to the site - just review the "last edited" date and that's the list of the ones that need to be migrated. The same goes for CMS pages.

In short, there's no way to do this in one fell swoop without requiring some prep effort on your side. A data install script will save you the hassle, but in my opinion it's a pretty big hassle to get those created and tested in the first place.


I actually did exactly what you are describing recently. We had been working a long time on our new site design and many orders were placed on the production site. New extensions, blocks, CMS pages and many more database reliant changes were made.

I ended up saving myself some time and just did a Cart2Cart transfer over to my Development site making it the new production site. The site has actually picked up since then and has functioned very well with no issues during the process. Is this the RIGHT way? MAYBE not, but it ended up being very effective for me.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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