Imagine you have been evaluating your web presence and have determined that there are tasks you need to work on to improve your website. After careful deliberation, your team has identified points A, B, and C are all either not working, or not working as effectively as they could be, and need to be removed or revised. However, you know these are big changes, with a lot of potential to break your existing website, wrecking the user experience for visitors. What do you do?
Not a literal stage!
The answer is to set up what is known as a staging, or development site. What is that you ask? It’s a duplicate copy of your existing site that is located in a place that visitors are not going to know about, and not be able to access. This will allow you and others to develop and revise the website safely without risk of real visitors knowing anything is going on.
When I should get a staging site?
In February 2015, Google posted an article about finding more mobile-friendly search results. This meant that they would favor mobile-friendly websites over non-mobile friendly websites starting later that spring. If you had been holding out on making your website more responsive, Google’s announcement may have been a good kick in the pants to get started. No one wants to lose their search ranking, and we do not want to see you lose that either! Having a staging copy of your website allows you to make your current theme mobile friendly (or replace your website’s theme with one that already is). Both aren’t quick changes, so allowing your users to see the current site while you do the work benefits everyone.
Some other examples of times where you would want to consider a staging site include:
- When making any template file or style changes, responsive or not
- When doing upgrades of WordPress core or plugins, especially between major versions. This helps prevent white screens
- User testing of new features
There are many more reasons, but these are just some common times using a staging site benefits you in a big way.
How do I go about acquiring this copy?
This is a good question, and the solution will depend on certain things. The first question to ask is if your hosting provider has any staging management already provided. If you are hosted through WPEngine or SiteGround for example, then you have easy staging management already. Other hosting providers may vary.
If you are not hosted through either of those, you are not out of luck, but there will be more required steps. It is possible to have a subdomain or alternate domain created to host the copy of the staging site. The only real difference would be amount of work needed to have it created.
If you would like to minimize the manual work required and have no problem with the staging site being hosted by a third party, a plugin/service like WP Stagecoach is a viable option for you. It is a premium service, but from the looks of it, they would be worth the annual fee.
If you are looking for an extensive how-to that does not rely on third parties, check out a more extensive post over at the Maintainn blog. You can always just hire Maintainn to help you out as well.
We have the copied site created, now what?
This is the point where the real work starts. All people involved in the desired work are going to be able to make changes and test things out and get it all ready for the eventual release on the live site without worry.
Once all the changes have been made and verified to cause no major issues, the changes need to be uploaded and implemented on the live site. This will include importing or re-implementing any changes for database content, as well as uploading changed files via (s)ftp or, if you are lucky, merging the changes into the production branch of your version control. Once that is done, any caches should be flushed so that users will receive the labors of your hard work.
What should I keep in mind with a staging site?
The primary thing to keep in mind is access by those who should not have it. This includes more than just people. You don’t want search engine spiders to be crawling the site as well, as you will risk having duplicate content indexed, which is not good in their eyes.
Enabling password access will be a big step in preventing both from occurring. There are WordPress plugins available for this as well as server-level configuration options.
You will also want to disable any caching you have available for your site while working on changes. This will make it easier to see what you have done and keep development swift.
If you have any questions, let us know in the comment section below.