Have you ever made a modification on your website to immediately regret the decision? You won’t be the first one because it’s a fairly common occurrence. But imagine if you had made the modification not on your original website but on a replica site, you could’ve easily evaded a disaster. In this article, we are going to show you how to create a replica site (often called a WordPress staging site) on which you can conduct tests before making them on the live website.
If you are just looking to stage your website quickly but without any hiccups, you can install our WordPress Staging Plugin. It’ll instantly create a replica of your site where you can test changes.
What is WordPress Staging Site?
In simple terms, a staging site is an exact replica of your WordPress website. When it’s time to add or remove plugins, switch themes, add custom codes or make any kind of significant changes on your WordPress website, it’s best done on the staging website.
Staging environments (sometimes called testing environment) can also be used to troubleshoot problems. An issue found on your original website (also often known as the live site) will be present on your staging site because it’s a replica after all.
Deactivating a few plugins or switching themes are few common ways of troubleshooting issues. When you do these things on your live website, you are exposing yourself to greater risks. Having a staging site is a great way of tracking down issues but without the risk of breaking your website or putting it in maintenance mode.
A quick note for e-commerce website owners, for whom it’s much more important to have a staging website. Putting your website in maintenance mode or worse serving a broken website to visitors will have a negative impact on your business. To avoid that you can check our 7 WordPress maintenance tips.
Before we move on and show you how to create a staging site, let’s look into some of the pros and cons of using a staging site.
Pros And Cons of Using a Staging Site
When you are trying to build a clone website, there’s a good chance of experiencing some drawbacks. But the advantages easily outweigh the disadvantages.
- It enables WordPress users to make significant modifications to their websites without breaking them.
- Helps discover bugs, errors, and other critical issues without risking your original website.
- Helps build better WordPress sites because you are not afraid of experimenting or testing everything thoroughly before pushing them on your original site.
- If you want to restore from a backup, then staging will enable you to find the correct backup version.
- Staging sites are an additional cost. WordPress hosts and plugins usually charge a fee.
- Staging can also be complicated and time-consuming to set up.
- Testing the changes on your staging sites and then replicating the same on the live sites is cumbersome. You may also forget what changes you made and in which order.
All these shortcomings can be overcome by using the right WordPress staging solution. Let’s take a look at the different staging options.
Top 3 Ways to Create a WordPress Staging Environment
There are several ways in which you can create a staging site. While some are complex and expensive, there are easy ways to do it. Below, we’ll cover the three main options to create a staging website:
- Creating a Staging Site With a Plugin
- Creating a Staging Site With Your Web Host
- Staging WordPress Site Manually
Let’s explore these options and you can pick the one which you find convenient.
1. Creating a WordPress Staging Site With a Plugin
There are quite a few plugins that allow you to create staging websites but you’ll want to be careful when choosing one.
- Popular WordPress staging plugins create a clone site on your site server which consumes your server resources. It has an impact on your site’s performance. You may find your website slowing down.
- Some staging plugins are incompatible with popular caching plugins. Although performance is less of an issue with staging sites for WordPress but if you want to try out the caching plugins, there’s no way for you to do that.
- Many staging plugins neither support multisite networks nor translation plugins, because the plugins use subdomains (like fr.websitename.com).
If you’re a BlogVault client though, you’ll most likely never have to worry about these. BlogVault will stage your website independently, on its own dedicated servers and it doesn’t suffer from incompatibility issues. BlogVault supports WordPress multisite networks. If you have a particularly large website, you will realize that it’s difficult to find plugins or even WordPress hosting company that stage large websites.
It’s worth mentioning that BlogVault is not a WordPress staging plugin. Website staging is one of the numerous features it offers and it’s available even in the free trial.
Staging a Site With BlogVault
Staging with BlogVault is literally a matter of a click. Here’s how you can do it:
Step 1: Install and activate the staging plugin on your site. Then add your website (the one you want to stage) to the BlogVault dashboard. It’ll immediately take a backup of your website. Proceed to create a staging site only after the plugin takes a complete backup.
Step 2: From the dashboard, select Add Staging Site and within a few minutes, the staging website will be ready.
After that, open the staging site by clicking on Visit Staging Site. You won’t be able to access the site unless you use the set of new credentials (look at the image below). Therefore use the new credential to log into the staging site. Following that, you can log into your wp-admin by using your WordPress website credentials.
Quick note: Your staging site is password protected from search engine indexing so you don’t have to worry about an exact copy of your site appearing on Google.
Pushing Changes To Your Original Website
Once you are ready to push changes to the site, simply go to the BlogVault dashboard and select Merge from the Staging section.
And that’s it. You merged your staging site with the original WordPress site with the click of a button.Creating a WordPress staging site is much easier than you think. Just follow this step-by-step guide. 🤩 Click To Tweet
2. Creating a WordPress Staging Website With Your Hosting Provider
It’s common for WordPress hosting companies to offer staging facilities but they are expensive. Both Bluehost and SiteGround offer staging facilities in higher plans which begins at $20 per month. FlyWheel, Kinsta, and WP Engine, on the other hand, offers staging facilities with all their plans. Flywheel’s lowest plan is $23 per month and with Kinsta and WP Engine, you’ll have to spend $30 per month.
Creating a Staging Website on Bluehost
Bluehost offers staging facilities in it’s Managed Hosting plans.
Log into your WordPress website and select Staging from the menu. A new page will appear from where you’ll select Create Staging Site. Once the staging site is ready, your hosting provider will inform you.
To open your staging site, select Go to Staging Site and login using your WordPress website credentials. After you’ve made modifications on the staging site, it’s time to push the changes from staging to live site.
Pushing Changes To Your Original Website
When you are ready, go back to the dashboard of your original site, and select Staging again. In the next page, you’ll have the options to
- Deploy Files Only
- Deploy Database Only
- Both Deploy Files & Database
If you don’t know which one to select, a safe option would be to choose the third option – Deploy Files & Database.
Creating a Staging Website on SiteGround
SiteGround offers staging feature for Managed Cloud Hosting & Dedicated Hosting users.
Log into your SiteGround account and from the cPanel, navigate to WordPress Tools > Staging. After that, (if it’s hosting more than one website) select the site you want to stage. Just click on the Create Staging Copy button.
If the web host finds files or folders that are not part of your WordPress website, it’ll ask you whether you want to include them in the staging site as well.
After that, the tool will ask you to generate a username and password which will help protect your website from search engines. If the search engine starts crawling your staging website, you’ll have duplicate content issues.
Depending on the size of the website, it’ll take a while to create a staging website.
Pushing Changes To Original Site
Once you are happy with the changes you’ve made on your staging site, you can push the changes to your live site. Just go to your cPanel and navigate to My Account > Original Website > Push to Live.
Creating a Staging Site on WPEngine
WPEngine includes staging facilities in all its plans. Log into the dashboard of your WordPress website and select Legacy Staging from the menu. From the Legacy Staging page, select Copy site from Live to Staging.
The staging site is ready, you’ll be notified along with a link to access your staging website. After that, you can log into the staging site using your WordPress website credentials.
Pushing Changes To Original Site
After making changes to the staging site, you would want to push changes from the staging site to the live site. To do so, log into your live WordPress website and from Legacy Staging select Deploy site from Staging to Live.
Before moving, WPEngine offers you the option to choose which tables you want to move. Tables are part of your WordPress site database (recommended read: Beginners Guide to WordPress File and Database). When you are making modifications to the staging site, it’s very likely that you are making changes in the tables.
Note: If you are unsure of how to proceed with this step, contact your hosting provider and ask for help.
After deciding what to do with the database table, select Deploy to Production. And that’s it.
Creating a Staging Site on Kinsta
Kinsta includes staging facilities in all its plans.
Log into your Kinsta account and select Sites. Click on the website you’d like to stage. On the next page, navigate to Staging Environment > Staging > Create A Staging Environment.
It can take up to 15 mins for Kinsta to create a staging site. You’ll find the Staging URL in the domain tab.
Pushing Changes To Original Site
Log in to your MyKinsta dashboard and select the website you had staged. Then navigate to Staging Environment from the top of the page. In the Staging Environment page, you’ll find an option that says Push Staging to Live.
Depending on the size of your website, Kinsta will take some time to push the changes. You will be notified when the process is complete.
Creating a Staging Site on FlyWheel
FlyWheel includes staging facilities in all its plans.
Log into your FlyWheel dashboard and navigate to the Advanced section. There is a Staging option which you’ll need to enable by toggling the switch on.
It may take a few minutes, particularly for a large site, to get the staging ready. But once it’s ready, you can access the staging site URL from the Staging tab.
The staging site will be set on a Privacy Mode so that search engines don’t crawl your website which can lead to duplicate content issues. To access your site, you’ll first need to bypass the Privacy Mode by using auto-generated credentials. You can find the creds from the Staging tab. Following that, you can log into the staging site, using the same credentials as on the live site.
Pushing Changes To Original Site
When you are ready, navigate to the Staging tab on your FlyWheel dashboard. Then select Move staging changes to live site. A pop up will appear asking if you want to –
- Copy staging database to production
- Yes, I am sure I want to move staging changes to my live site
- Backup the current site before moving changes
It’s a little tricky to understand the difference between the options. If you are still unclear about which steps to take, contact your hosting provider and ask for help.
With that, we have come to the end of staging websites with hosting providers. If you are not using any of the hosting providers we have listed, don’t fret. Do a simple Google search or send them an email or get on a chat. Learn if they offer staging facilities on the plan you have selected. It’ll be helpful to learn about the staging process because you’d want to avoid using a service that makes it hard to stage a site.
Speaking of hard ways to stage, manually staging a site is really difficult. Nonetheless, if rather give it a try, here’s how to stage a site manually.
3. Staging a WordPress Site Manually
Creating a staging site on your own is not a good idea for a beginner, someone who has only ever built a simple WordPress website and knows how to install themes and plugins. Even if you are a keen learner, staging a site manually involves a number of steps and one mistake can lead to a broken staging site that you can’t use. However, if you understand how WordPress works and have dabbled into the WordPress database, and FTP client, then give it a try.
But, before you begin, make sure you have take a backup of your WordPress blog. If you make mistakes while downloading or uploading the files and database, and your site goes kaput, you can simply restore the site back to normal.
IMPORTANT: And before we dive in, a quick summary of the process will help you understand why you are taking certain steps. A WordPress website is made up of many files and a single database. To create the staging site, you’ll need to download the files and database and upload them to the staging site.
Step 1: Create a subdomain
We’ll be storing the staging site in a folder of your live website. So the first step is to create that folder.
Log into your hosting provider and from the cPanel navigate to Subdomains. Create a subdomain named ‘staging’.
Now you’ll need to create an FTP account for your new subdomain. The FTP account is an enabler. It’ll enable you to upload the files of your “running” site to your staging site.
To create an FTP account, go back to the cPanel and select FTP Accounts from under Files. Enter account details and ensure that the Directory matches with the sub-domain you just created (check the image below).
Step 2: Download the files and database of your original site
Download WordPress files: You can use a File Manager (via your web host account) or an FTP client. We’ll show you using an FTP client called FileZilla. Download and install Filezilla and then enter the FTP details of your live website. You can also check our in-depth guide on how to use FTP.
(Remember to use the FTP details of your live website and not the ones that you created in the previous section. You can find FTP details with the help of these videos or you can ask your hosting provider.)
Once the connection is established, you’d want to download the root folder or the public_html folder where all your files are stored. Just right click on public_html and select Download.
Download WordPress database: Log into your hosting account and go ahead and select phpMyAdmin. On the next page, navigate to Export > Quickly.
Now you have a copy of the files and database of your website.
Step 3: Upload WordPress files & database to your staging site
Upload WordPress files: Remember the FTP account you created in step 1? Use that to log in to your staging site. Just open Filezilla, insert the credentials and wait for the connection to establish.
After that, navigate to Remote site > public_html > staging.
The WordPress folder that you downloaded in a previous section is present on your local computer. Just select it and do a right-click then choose Upload (check the image below). Your WordPress folder will be uploaded to your staging folder.
Upload WordPress database: This step involves creating a new database first and then uploading the old database in the new one.
Log in to your hosting account and then navigate to Databases > MySQL Databases > Create New Database.
Next, you need to create a MySQL user for your database. Just scroll down on the same page and create a new user.
Now, it’s time to upload the database you’d downloaded in an earlier section to this new database. Just head over to phpMyAdmin from the hosting dashboard. Select the database you just created and then click on Import. This will make sure that you are importing in the right database. Then just go ahead and import the database from your computer.
Step 4: Modify the wp-config file
This step involves modifying the wp-config file to connect the database with the staging site.
From FileZilla, navigate to Remote site > public_html > staging > wp-config.php. Right-click on the file and select Edit. The file has information on your old database (or the database of your live site). Replace it with the new database name, username, and password. Once, you’ve modified the information, save the file.
The URL of the website will appear like this: staging.yourwebsitename.com. The login credentials will be the same as on your actual website.
Step 5: Hide your staging site from search engines
Ensure that Google is not crawling your new staging site by a using plugin called Hide My Site. Once you have activated the plugin, head over to Settings > Reading > Discourage search engines from indexing this site. Also, you can read our guide on how to block Google from indexing your website.
Pushing Changes To Your Original Site
If you were testing something on your staging sites like a plugin or a theme, you can simply go ahead and install them on your live website. But if you are making bigger modifications, then we’d suggest you download the files and database on your staging site and then upload them to your “running” site using the same process we discussed before.
While there are different ways of setting up a staging site, not all methods are worth trying. Manual methods are time-consuming and prone to mistakes. But creating a staging site is much easier if you do it with a plugin.
Create a staging site without any hiccups,
Try BlogVault’s Staging Services Now!