1. Preparation
Unzip a copy of the new version of Zen Cart®, upload it to your webserver into a "
demo" folder, and install the new version into a separate database, and include the Demo products.
This is just for a place for you to play with the new version and get used to its new features. These can be deleted after conversion is complete.
Study the new features, and the documented changes to the template structures, as well as the "changelog". Use the demo products in the demo shop as examples. See also the supporting documentation provided with the new release.
Make a full backup of your database (dump to SQL file). Store this file on your PC for later reference.
Make a full backup of your site files (ftp to your PC and zip it up for safe-keeping).
Keep the backup on your PC to use in next steps. Perhaps call this folder "
\zen_backup".
Now let's find out the differences/customizations details between your site and the original Zen Cart files.
Unzip a copy of the original Zen Cart® files for the version you
originally installed or last upgraded from (ie: perhaps v1.2.7 or even 1.3.6). This should be placed in a separate working folder on your PC (perhaps "
\zen_orig").
Make a list of any add-ons you have installed, for later reference.
Run a tool like
WinMerge to compare the "Original" Zen Cart® files in "
\zen_orig" against your working backup files in "
\zen_backup".
Note all the files that are "different". In WinMerge, double-click on each file and note what the differences are.
If the differences are just language defines for display text, those will be simple to carry forward.
If the differences are actual programming/code differences, you will need to make detailed notes in order to carry over those changes to the new new new version.
Any mods/add-ons you've installed will likely contain many programming changes, and may not be fully compatible with the newer Zen Cart® release.
Your list of add-on's may help you narrow down the source of any differences you're finding between versions. You may have to download the add-on again to take a look at the readme or code contained in it. You may have to contact the author to ask for an updated version.
As you make your list of changed files, etc, at this stage, you may want to move things into the Zen Cart® template-override structure, if you haven't already done so. See the
Zen Cart® site for FAQ's on the template system.
3. Testing
Make a NEW database to install the new version of Zen Cart® into. Use your hosting control panel to do this.
If the last backup you made of your data is older than the last order that might have been processed or customer registration, make a fresh database backup.
Restore your database from the backup in step #1 earlier into your NEW database just created.
If your /zen_new folder doesn't have "/includes/configure.php" and "/admin/includes/configure.php" files, copy them from your old store folder.
EDIT your "/zen_new/includes/configure.php" file and ensure that your DATABASE_NAME matches your NEW database. Also verify database username and password in case that information has changed. Save this file, and be sure to upload it as part of the next step. Repeat for the /admin/includes/configure.php file as well:
Upload the files from your modified "new version" (created in step 2) to your server, into an alternate folder, perhaps called "/store_new".
Ensure that you have uploaded the "/zen_new/zc_install" folder to your server.
Using your browser, surf to /zc_install/index.php and choose "Database Upgrade" when prompted. (Don't select "Install", or you will overwrite your database.) (If "Upgrade" is not offered, then the installer was unable to connect to your database to confirm what version its structure is at. Check your configure.php settings.)
Test your customizations. Edit as needed. Compare with the test/demo install performed earlier, as needed.
When satisfied that all is OK, go live.
If significant time has passed since you did your last backup, you may want to repeat the steps in this "Testing" section again, using a fresh backup from your live shop. You don't need to re-upload files again ... simply do the database restore, and run the installer to do the database upgrade again.
To go live, put your shop into "Down for Maintenance" mode in the admin area. Be sure to add your IP address to the list of allowed addresses to get into the site for previewing.
This can be done easiest by renaming "store_new" to "store". (You'll have to rename "store" to something else first.)
Test it to be sure that things are operating as desired. If you have small problems to repair, turn "Down for maintenance" on and off again as necessary.