How To Make a WordPress Sandbox Site In 8 Small Steps

In: WordPress Tutorials - Intermediate

How To Set Up a WordPress Testing Site

As I’m sure most of you are aware, WordPress 3.5 is out now and some of you may already have upgraded, hopefully smoothly. However,  every time a new version of WordPress is released, some people will experience compatibility problems with their sites. These can be minor and easily resolved, or they can  be more tricky to diagnose. Either way, especially for non-developers, such problems are a little scary, particularly if they make your website inaccessible or unusable. One way to ease the stress of an upgrade, or to experiement with any changes you may want to make on your site, is to create a sandbox, or testing site. The video below shows you how you can easily do that using free tools. 

If you use WPEngine (cupcake money, ie. affiliate link) you have access to a staging area, which allows you to make a duplicate of your site with one click.You can then use this staging area to test out upgrades, plugins, theme changes etc.
If you’re not on WPEngine you have a couple of other options:

1) Run a duplicate site on a local installation of WordPress. Local means it’s not accessible via  the internet, only on your computer.
2) Use a spare domain to create a duplicate of your site. This would be live on the internet to anyone that had the web address.

I prefer option 1 because it’s more secure. If you set up a live dummy site you either need to delete it after your tests, or you need to maintain it just like you would any other site to maintain security. When people forget about their test sites they then forget to update plugins, WordPress etc and they tend to be easier targets for hackers. This tutorial focuses on option 1.

The video below demonstrates the following 8 simple steps needed to create a fully functioning duplicate of your site, running on your computer that you can do your worst with and it won’t matter if you break it!

1)  Download the free version of Desktop Server (if you are a developer or build a lot of sites, the Premium version is a must-have tool).The premium version will make the process even easier but I wanted to show you how it can be done for free.

2) Install the Duplicator plugin on your live site, create a Package and download the Installer and Package files to a folder on your computer

3) Launch Desktop Server and create a new development site, but stop short of creating a username and password.

4) Navigate to your Websites folder where you will find a folder named for  development site you just made (e.g. www.yoursite.dev). Move the wp-config.php file from this folder into the same folder  where you downloaded the two files from Duplicator.

5) Delete all the other files from the dev website folder (sounds wierd but we’re replacing them with all the files from your live site instead)

6) Move the Duplicator package zip and installer.php files into the now-empty dev website folder

7) Navigate to the installer file by typing in the dev url you created and appending /installer.php, eg. www.yoursite.dev/installer.php

8) Open the wp-config.php file, then follow the onscreen steps, copying/ pasting the database info from the wp-config file. After you complete the onscreen steps, navigate to your dev url and boom! –  there’s a duplicate of your live site running locally on your computer. Congrats, you’re a genius!


Now you can test away, run the upgrade, see if any plugins need replacing etc. Then you will know exactly what needs to be done on your live site to ensure a smooth upgrade.

header image courtesy: http://www.flickr.com/photos/dopey/123646856/sizes/o/in/photostream/

Weekly WordPress Tips To Your Inbox
+ Get 50% Off The Beginner's Guide to SEO Ebook!

Lucy Beer - WebTrainingWheels WordPress TrainingDo you need a personal WordPress teacher to help you learn what you need to know without wasting time? I provide customized WordPress tutoring in-person or remotely via phone/screensharing.


27 Responses to How To Make a WordPress Sandbox Site In 8 Small Steps

Avatar

Jacqueline

December 27th, 2012 at 9:59 am

Hi Lucy, another interesting and timely post. Going to try this out for sure. Best to be testing in a sandbox. Providing the free version of the apps in your instruction is thoughtful!

Avatar

Steve

April 18th, 2013 at 3:04 pm

I get an error on deployment. I get the following message:

server code: 200
status: OK
response:
INSTALL ERROR!
A wp-config.php already exists in this location. This error prevents users from accidentally overwriting the wrong directories contents. You have two options:
Empty this root directory except for the package and installer and try again.
Delete just the wp-config.php file and try again. This will over-write all other files in the directory.

I can't get past this error. Any suggestions?

Avatar

LucyBeer

April 19th, 2013 at 7:30 pm

Did you follow the instructions the error message provides? You already have a wp-config file so you have to deal with it in one of the two ways mentioned. Have you tried either method?

Avatar

David Delp

May 1st, 2013 at 9:27 pm

I'm using option #2 so that my client can review changes before launching. The issue is that he's also adding content to the production site. How do I use Duplicate to copy all of my changes into the production site without stomping on all of his content updates? I can't find the answer anywhere so I'm stuck. I dont' want to screw up his database.

Avatar

LucyBeer

May 3rd, 2013 at 12:41 am

Are you actually making changes in the database or just to theme files?

Avatar

David Delp

May 3rd, 2013 at 2:21 am

Theme files mostly. Plus text widgets and maybe a few settings, but I'm willing to manually cut and paste those changes.

Avatar

LucyBeer

May 3rd, 2013 at 6:45 pm

If you are primarily updating theme files you don't need to use duplicator. Just FTP your theme up to the server. Then you won't have to touch the database.

Avatar

David Delp

May 4th, 2013 at 11:06 am

Thanks Lucy. I do that, but there's still a lot of handwork updating text widgets and plugin settings. Gotta keep good notes. Is that what you do?

Duplicator could work for creating the original sandbox. It was suggested I create a starter site with plugins and themes I like to work with, bundle that up and start all my sites with that.

Neat idea, huh?

Avatar

LucyBeer

May 4th, 2013 at 11:23 am

Yeah, there's no simple way I know of to cleanly and easily 2-way sync EVERYTHING once your client is involved with adding content etc. I try and do as much as possible locally before the client is involved. Once the site is live it does change things a bit. I haven't used it yet, but you could check out this plugin for easy transport of your widgets: http://wordpress.org/extend/plugins/widget-settin

Avatar

David Delp

May 9th, 2013 at 3:26 pm

Boy (I mean girl), did that help! Thank you so much Lucy!

Avatar

LucyBeer

May 9th, 2013 at 4:06 pm

Nice!! Glad to hear it!

Avatar

Matt

September 14th, 2013 at 4:17 pm

Hi Lucy,

Thank you so much for posting this article… it seems to be the only one of its kind online, and it was exactly what I was looking for!

This worked great for me, I see the dev site on my local machine… however when i try to go to the wp-login, I get an error:
—–
Warning: require_once(./admin.php) [function.require-once]: failed to open stream: No such file or directory in C:UsersMattDocumentsDP WebsiteSandboxcdp-sandbox.devwp-adminindex.php on line 10

Fatal error: require_once() [function.require]: Failed opening required './admin.php' (include_path='.;c:xampplitephpPEAR') in C:UsersMattDocumentsDP WebsiteSandboxcdp-sandbox.devwp-adminindex.php on line 10
——
Do you know what might be going on here? I've followed the steps and the video twice through, and I get the same problem each time.

Thanks again!
Matt

Avatar

LucyBeer

September 15th, 2013 at 12:58 pm

Hey Matt – Sorry I'm not really sure what's going on with that error message. But check out the forums on ServerPress.com – the support is really good over there. Hope you get it sorted!

Avatar

creativedatingprofiles

September 15th, 2013 at 1:28 pm

For anyone else with this issue i think I figured it out! Just download a fresh install of wordpress and overwrite everything except the wp-config and wp-contents. That did the trick for me! Thanks again Lucy!

Avatar

rocketMonkey

September 24th, 2013 at 2:15 pm

In order to grab all the latest site content after the initial local install do you simply repackage the site and reinstall?

Avatar

mattsahib

October 6th, 2013 at 6:57 am

How does this work withl arge wordpress-content folders? It stops at "CREATING PACKAGE " Pretty frustrating. I excluded both the content folder and all media files but it still fails on me.

Avatar

LucyBeer

October 6th, 2013 at 9:37 am

This is not really the place for tech support – the Duplicator devs deal with that pretty well on their own site, and they have a lot of info there about common issues, troubleshooting etc. However, most issues that arise when trying to use this plugin are generally not an issue with the plugin per se, and more to do with a configuration on your webhost. In this case it sounds like the server might be timing out – could be a PHP memory issue or something like that. So you would probably have to contact the host and see if they can up the limits. But check the plugin website first.

Avatar

LucyBeer

October 6th, 2013 at 9:38 am

If it's just content, you could use something like WP Migrate DB plugin to keep the databases in sync. That way you don't have to re-duplicate the entire site again.

Avatar

Ian Stanford

November 3rd, 2013 at 11:42 pm

Wow, what a site.

Lucy, I was wondering: once you configure the theme changes, implement your new CSS or whatever you used the local version for, can you then upload those changes back to the live site? Or are you better off just making the changes on the live site manually? I'm doing a theme change and redesign that will take some time, so I'd prefer to do it all locally first instead of piecemeal live where people can see it under construction. But doing everything twice sounds like a lot of added time, so I thought I'd see if there's a shortcut before I dive in.

Thanks! I subscribed to your newsletter and am anticipating the emails!

Avatar

Daniel

November 25th, 2013 at 5:00 am

Loving this however I follow your instructions to the letter and only get an index of and the wp-config file is always blank in the newly created site – am I doing something wrong?

Thanks Lucy

Avatar

LucyBeer

November 25th, 2013 at 9:33 am

Hey Daniel
Well it does sound like something is going pretty wrong there! Without seeing your every move it's hard to say where the problem lies – possibly with the file that Duplicator is creating. Perhaps a good idea would be to download the Duplicator zip and open it up to see what's in there – it should contain all your site files etc.

Avatar

@FakeGreenDress

January 17th, 2014 at 10:49 am

I just ran into the same problem. Seems like Duplicator doesn't duplicate *everything* in the WordPress install. I made a new blank dev site, and merged all the files from that that it didn't create, and then it worked.

Avatar

Antonio

January 28th, 2014 at 3:06 pm

I needed to test the new handmade plugin outside my blog, so I'm looking for a sandbox. Your video tutorial was an absolutely fantastic solution. Very simple and nothing superfluous.
There were some troubles with etc/hosts – DesktopServer unable to update it for unknown reason. Any unlokers couldn't help. Solution was ridiculous – unmark "hidden" in the properties.
Anyway, DesktopServer now works fine and I've installed a new handmade plugin to the main blog.

P.S: I'm your new subscriber :)

Avatar

Rob

January 31st, 2014 at 3:10 am

Thanks for the tutorial. Unfortunately I cannot use the current version of Duplicator as it fails the 'Requirements' test due to limitations of my host. However… a further search has revealed a recently released plugin called 'Sandbox'. I've installed v0.1 and it seems to work a treat.

Avatar

Eric

February 6th, 2014 at 6:02 pm

I'm the author of the plugin and saw your post here so I thought I would reply. I'm glad the plugin proved useful. I wasted a significant amount of time constantly downloading sites to test new versions of wordpress, woocommerce, etc. and decided to build this plugin. I hope everyone finds it as useful as I do.

Avatar

@ctomlin

April 9th, 2014 at 1:49 pm

Thanks so much for this Lucy, GREAT help and EXACTLY what I needed! You're a life-saver.

I had several errors that you didn't. One was caused by Skype using Port 80 already. By following the instructions provided by ServerPress I was able to turn off Skype's automatically wanting to use Port 80. That allowed the Desktop Server install to run.

The second issue was WP Cache. I had a WP Cache Object.php issue which didn't allow Duplicator to run. I ended up just deleting the entire WP Cache plugin, because it was disrupting my mobile version of the website anyway. So that allowed the Duplicator to run.

Thanks again for SUCH a great post! And if you are thinking about doing another on how to move your dev site to production to replace your old live site I'd be VERY interested in reading that! :-)

Avatar

LucyBeer

April 11th, 2014 at 8:36 am

So glad you found it useful! Thanks for the heads up on the issues you encountered. Server and local configurations are always different and can always cause issues with plugins. Always a good idea to turn off any caching when a moving a site around – caching plays havoc with a lot of stuff!
The premium version of Desktop Server has a deploy feature to make things pretty easy – I would say it's definitely worth your money! But I'll also consider the topic for another post.
Thanks!!

Comment Form

Weekly WordPress Tips

+ Get 50% Off The Beginner's Guide To SEO Ebook!

How I Can Help You

Hi! I'm Lucy Beer. I know that WordPress is liberating when you know how to use it, and bewildering when you don’t. I help individuals and businesses learn WordPress for their specific needs. I will accelerate your knowledge and cut your learning curve in half (at least!). Generic tutorials and videos only go so far - when you need specialized knowledge, or a real person to answer your questions, that's where I come in. I help non-techies understand and use the web to empower their personal or business mission.

Learn How To Get Targeted Traffic To Your Site >> $20

Socialize

Services I Use & Recommend

Siteground Hosting
Sucuri
WP Engine
Gravity Forms
  • LE Johns: Just out of curiosity, do real people ever register as subscribers on a blog via this registration p [...]
  • Dorothy at Shockingly Delicious: I just updated WP and I really miss not being able to highlight text with a background color. I didn [...]
  • BluePromoCode: Thanks for the article with the code. I have been looking for this and always ended up getting confu [...]
  • LucyBeer: Thanks and you're welcome! I need to update it a little to talk about some of the new details i [...]
  • LucyBeer: Sounds like you'll need something like the "Members" plugin by Justin Tadlock [...]