Staging Sites Simply Explained
WordPress staging sites are a duplicate of your current website that you can work on without disturbing your "live" site. Once your staging site is setup, you are provided a temporary URL that allows you to access this additional installation of WordPress located within your website's Managed WordPress hosting.
Your staging site gives you the opportunity to make changes to your website in the background and update your site exactly the way you want it. Once your modifications are ready for prime-time, you move or "push" the staging site to replace your live site. Cool, huh?
First a little history...
Back in the day, if you wanted to switch themes and update layouts for example, you would have to setup another install of WordPress that unlike a staging site was not connected to your live site. You would then have to migrate the site content, theme and plugins over so you could work on the duplicate of your website. This allowed you to keep the existing live site uninterrupted for site visitors.
After you would get things looking the way you wanted, you would have to manually mirror any changes that were made on the test, or beta site, to the live site -- in real-time. Over the years I worked on many sites after business hours for these reasons!
Before managed WordPress hosting, temporary URLs were not available either. We had to use a little trick to access a WordPress site without a domain. This involved modifying the Hosts file on your computer which intimidated many users.
This process required that you add a line of info to your Hosts file on your local computer that noted your site's IP address and domain. The addition of his line would direct your computer to resolve your domain to that IP. In essence you were tricking your computer to think that your domain was on your test/beta site -- not your live site.
Adding this line (of course with the actual IP and your actual domain) is what you would add to your computer's Hosts file.
You would then have to go back into your Hosts file and remove that line when you wanted to access your actual live site where your domain actually resided. Sort of a PIA...
For those without a Staging environment, this solution is still a viable option for you. You can find out how to modify your Hosts file based on your OS here.
Enter Managed WordPress Hosting
One of the many advantages of Managed WordPress Hosting is the included staging environment. Most managed platforms offer the ability to setup a staging environment with just a click or two. A lot easier than what I described above!
So why would you want or need a staging site? Here are some tasks you would prefer to not have to integrate on a live site.
- You want to add a membership platform to your current site.
Adding membership plugins and protected pages can get very complex. You then need to add the membership area to your site in the navigation, sidebar and footers. Usually you are switching themes as well to accommodate these new features.
- You want to include eCommerce on your established site.
Adding an eStore requires new pages for your terms, policies, etc. as well as a page for each product. Next you need to add your payment gateway(s). Then add the various plugins that will add and enhance functionality and you definitely don't want to be setting this up on a live site. Here again you'll most likely switch themes as well. Lots of cool WooCommerce enabled themes are available!
- You want to switch themes to get a fresh look.
To keep up with visual trends you'll probably want a new look every other year or so. Or you start looking dated. A staging site allows you to install the new theme with your current content. You can then tweak your site to display exactly the way you want before making the new look live.
- Getting your feet wet with Gutenberg.
With the soon to be introduced Gutenberg editor in WordPress, your staging site will a perfect environment to learn, test and tune!
What's the process -- exactly?
In most managed WordPress hosts I've worked with it's pretty simple. The host I use, WPEngine, allows you to create a staging site in one click:
- Go to your WordPress Dashboard (yourdomain.com/wp-admin).
- Click on the WP Engine logo on the side bar located at the top left corner.
- Select the “Staging” tab
- Click "Copy site from LIVE to STAGING."
Done! You now have a duplicate of your live site to do with what you may! When you are ready to "push" the staging site to live, you just go back to the staging tab and click: "Deploy site from STAGING to LIVE" and Boom! your new revised site is live to the world!
I also use SiteGround hosting which makes creating a staging site uber easy too.
Log into your User area → Manage Accounts → Go to cPanel. You will find a shortcut to the Staging tool in the two corresponding sections: WordPress Tools and Joomla Tools.
Staging Site Considerations
- There is no server side caching in place on staging sites, and being Managed WordPress hosting tends to have caching built-in, you'll want to ensure anything newly added that could conflict with the cache should be tested once live.
- Depending on your hosting company, the staging site may only include a predetermined date range of the /uploads folder copied over to staging. For the purposes of a staging site, we really do not need all the uploads (images for example) back to the beginning of time. Check with your host for any limitations.
- There are some plugins that should not be used in the staging area. For example, plugins with automation around tweeting or posting are not ideal to use in staging.
- Plugins that may have issues in the staging area are generally connected to third-party services or validate licenses based on your domain and are for one website. In this case, you may need to purchase two licenses to ensure similar functionality between your live and staging sites, or add your staging domain to the license. You'll want to contact the author of your plugins for more information.
- When pushing changes from staging to live, the file system from staging does not overwrite the live file system but instead merges with the live file system. This means any updated files in staging will be updated on live after a push, but any deleted files in staging would not be deleted in live.
Live vs. Staging
Your staging site is a snapshot of your live site at the moment in time that you created your staging site. If you make any changes to the live site after creating your staging site, you will need to mirror any changes made to the live site manually into the staging site.
This is so your changes on the live site are not overwritten when you push your staging site to live. If you make a lot of changes to your site or post daily or several times a day, you'll want to plan your staging project to be completed as quickly as possible. This way you do not have to keep making double entries (live and staging) to keep both sites in sync.
Staging Sites are an Invaluable Tool
Staging sites do not have to be exclusively created to eventually go live. You can also use a staging site environment as a testing environment.
Say you are curious about how to integrate a new plugin. You can create a staging environment of your live site and then in the staging environment play with the plugin and see how it displays and operates. Once you have your feet wet you can then add the plugin to your live site knowing there are no conflicts and then tweak the settings based on your staging test.
Now that you know what a WordPress staging site is, and the various ways you can use your staging site, you'll wonder how you ever lived without one!
At your service,
Disclosure: Some of the links on this page are "affiliate links." I may receive a small commission -- at no cost to you -- if you purchase or signup for services I recommend and use on my own sites. You can read my full Affiliate Disclosure Statement here.