Playing in the WordPress sandbox

Get dirty

When I was a kid, playing in the sandbox was a blast. Building, trying new things, creating Bucky Fuller-esque structures was a hoot. The sandbox was a place of experimentation.

In development, having a sandbox is similarly a Good Thing. It’s a place to try out new things without worrying about clobbering production code.

Why play in a sandbox?

A WordPress® sandbox lets you test out design elements while maintaining your existing site online. If you’re creating a sandbox for your own site, plan to host it on your domain, which simplifies migration later on. If you’re a developer who builds sites for different clients all the time, it’s often easier to have a dedicated domain for sandboxes. This way, you complete the same process no matter who requests a sandbox.

If you’re like me and you build sites all the time, it would pay to set up some sandboxes on one of your own domains. This way, no matter who needs a site, you can build it out on your end and share the URL with them. When the project is over, you can recycle the sandbox for the next project.” ~ Erica Mueller

Our friend Erica Mueller has put together a detailed walkthrough of how to create a WordPress sandbox over at her site, and has created a detailed tutorial. She’s even got a useful little video. Check it out.

Configuring a WordPress sandbox from cPanel

From your hosting account, look for Simple Scripts or Web Applications on the cPanel dash. Then, click the WordPress logo to launch the install wizard. Select the URL where you want to install your WordPress, then add a dedicated sandbox directory (such as /sandbox). Your install path should be “domain.com/sandbox.” Follow the prompts to configure and install your sandbox in a matter of minutes.

Configuring a WordPress sandbox without cPanel

If you don’t have cPanel, you’ll need to take some extra steps to configure a WordPress sandbox. You’ll need to create a database on your host, download the WordPress core files, and alter the files to run on your domain.

  1. Rename the wp-config-sample.php to wp-config.php, save the file, and then open it to make edits.
  2. Search the document for Database Name, Database User, and Database Password.
  3. Replace the dummy information with the corresponding information from the database you just created.
  4. Enter your hostname.
  5. Paste the URL found under Authentication Unique Keys and Salts into your browser window and load the page to see unique keys. Copy and paste the keys into wp-config.php.

After that, you can log in to your host via FTP and create a subdirectory. Upload the altered files via FTP directly to your newly created subdirectory.

Configuring a sandbox (temporary domain) on GoDaddy Managed WordPress

When you set up a Managed WordPress site on a GoDaddy Business or Pro plan, you can host multiple domains on your account, one or more of which can be used as a sandbox. You’re given the option to use temporary domain names, which lets you keep your existing site live while you work on a new one in the sandbox.

By using a temporary domain name, we provide a tool to build out or preview your sites without having to change their domain names’ DNS settings.”

WordPress thinks the temporary domain name is the domain name we’re going to use, so the absolute paths it creates are Web-accessible and load the appropriate resources to make the site work. Once you’re ready to move your DNS over to your “live” site, all you need to do is follow the Change domain link, and we’ll take care of everything to make sure your sites work. If you want to know about how to do this in more detail, check out Why use a temporary domain with Managed WordPress.

Christopher Carfi
A veteran of both startups and the enterprise, Chris has a deep track record in developing customer community and evangelist programs for brands such as Adobe, H&R Block and Aruba Networks while holding executive positions at Ant’s Eye View and Edelman Digital, and he was co-founder and CEO at Cerado. He currently lives in the Bay Area with his family.