Friday, April 3, 2020

Beginners Guide How to Set Up a WordPress Staging Site

Do you like playing with fire? Because if you make major changes to your WordPress site without testing them aka editing your site when its live thats exactly what youre doing. Without a WordPress staging site, youre essentially going in blind every time you tweak your site.Dont do that! In this post, Ill show you how to set up your very own WordPress staging site so that you can always vet changes before you push them to your live site. What is a WordPress staging site and why is it important?A staging site is basically an exact replica of your existing website with two key differences:Its not available to the public.Changes you make on your staging site have no effect on your live, public-facing website.This allows you to test out changes to your WordPress site without risking breaking your live website. That means you can try new themes, plugins, code snippets, and more with zero risk.Go to topBuild a staging site through your web hostMany managed WordPress hosts include built-i n staging sites as part of their service. If you want the most user-friendly way to create a WordPress staging site, choosing one of these hosts is definitely your best option. Here are a few quality hosts which offer staging sites as part of their plans:BluehostSiteGroundKinstaFlywheelHosts arent the only way to set up a staging site, though.If you just want a basic staging site to play around with new plugins and themes, you can create one using a plugin called WP Staging. If, on the other hand, you want to dig into more code-heavy experiments, you might want to manually create a WordPress staging site on a subdomain. Ill show you how to do both below:Go to topCreate a WordPress staging site with the WP Staging pluginIf you want a simple way to create a WordPress staging site, theres a fairly new plugin called WP Staging. Its a good option for testing out basic tweaks, or checking if new plugins or themes are compatible with your current setup.For example, some more complex plugin s might interfere with the rest of WordPress, causing some unexpected problems. Enabling such plugins on a staging site first is a good idea because you can check if everythings in order. This lets you avoid any trouble and/or downtime after a failed update/install. WP Staging will handle this purpose flawlessly.However, if you want somewhere you can really dig into your sites code, I would use the manual process I outline in the next section. WP Staging DB File Duplicator Migration Author(s): WP-StagingCurrent Version: 2.6.3Last Updated: October 15, 2019wp-staging.2.6.3.zip 98%Ratings 698,382Downloads WP 3.6+Requires To use WP Staging, you just need to install and activate it. Then, head to the  WP Staging tab and click  Create new staging site.Give your staging site a name (for example, dev or staging) and then click  Start Cloning.The process might take a few minutes depending on how large your site is. Once its finished, you can access your staging site by follo wing the prompt. Youll need to log in with your normal username. Then, youre free to start testing! Youll always be able to tell when youre on your staging site by looking at the orange admin bar:And dont worry only users with admin accounts can access your staging site. Neither Google nor your website visitors will be able to view it.Go to topHow to create a staging site for WordPress manuallyIf you want a more open sandbox environment one where you get to experiment with custom code modifications and etc., the next option is to manually create a staging site on a subdomain. Its important that you use a subdomain, rather than a localhost, so that your hardware environment is identical.Below, Ill show you step by step how to set everything up. The process might be a little tricky if youre a WordPress beginner, but Ill try to break everything down as simply as possible.NOTE before starting this process, make sure you have a recent backup of your site just in case.Step 1: Create a subdomain through cPanelFirst, youll need to create a subdomain to actually house your staging site. Go to cPanel and find the Subdomains option. Your cPanel might be styled differently, but the actual options should be the same:Then, create a subdomain named staging or something similar:Step 2: Create an FTP account for your new subdomainNext, you need to create a new FTP account for your subdomain. This ensures everything is always kept separate.Find the FTP Accounts option and click on it:Then enter the new account details. Make sure the Directory matches the directory (Document Root) for your subdomain:Step 3: Upload WordPress files to staging siteNext, youll need to use that new FTP account to upload your sites files.First, download the latest version of WordPress and upload that:Then, you need to also copy over these three folders from your existing WordPress site:.../wp-content/uploads.../wp-content/themes.../wp-content/pluginsUpload those to your staging site as well. If you r folders are especially large, you might be able to use cPanels File Manager to speed up the process. Otherwise, FTP is totally fine. I personally use FTP it just might take some time to run through large folders.Step 4: Export / Import your databaseNext, youll need to export your live sites database and import it to your staging site.To do that, I like a dedicated plugin called WP Migrate DB. Install and activate it, then run it by going to Tools → Migrate DB.The plugin will automatically update all of the file paths in your database to point to your new staging site URL. This is absolutely essential to ensuring your staging site actually works. Just make sure you enter the same directory path and URL that you used when you created your subdomain:Then export the database.Next, you need to create a new database for your staging site and import all of the data. Head back to cPanel and find the MySQL Databases option:Click it and create a new database:Youll also need to creat e a new database user:And give that user access to your new database:Then, go to PHPMyAdmin. Find the database you just created, click Import, and choose the file that WP Migrate DB exported:Then click Go to import your database data.Step 5: Edit wp-config.php to point to new databaseLast step! You need to edit the wp-config.php file on your staging site to use your new database details and username.Also, make sure the database prefix matches the one used on your live site. You probably wont need to change anything here but its possible depending on what prefix your live WordPress site uses. For example, my live test site uses wpov as the database prefix, so I had to make that change.If youre editing the wp-config-sample.php file, make sure to rename it to just wp-config.php. Then upload it back to your server over FTP.Step 6: Log in and restrict access to your staging siteIf all went well, you should now be able to log in to your staging site using the exact same username/password as your live site.Theres really just one more thing you need to do:Restrict access to your site.Start by going to Settings → Reading and choosing the Discourage search engines from indexing this site box. That will at least stop Google from indexing your site.If you want to restrict access even further, you can use a plugin called Hide My Site. In order to access any part of your site, visitors will first need to enter a password. You can still share your development site if needed by sharing the password, but strangers wont be able to access your site.Go to topHow to push changes to your live siteIf youre using a staging environment set up through your host, you can usually push changes live by clicking a button.Its not quite that simple with a manual system. While there are ways to set up automated deployment from your staging site to your live site, I dont think thats a good idea.Youre always risking something going wrong during the transition, and there really is a lot t hat could go wrong. For example, you might get just part of your changes deployed (= crashed site), or some untested changes might get deployed too quickly (= crashed site), and etc.Its safer to simply roll out changes manually once youve thoroughly tested them on your staging site.Go to topWrapping things upSetting up a WordPress staging site is a great way to play around with changes before you push them live. If you want the absolute easiest way to run a staging site, pay for a host which offers built-in staging sites.But if thats not an option right now, setting up your own WordPress staging site isnt that difficult.  WP Staging is great for a simple testing area, while manually creating a staging site on a subdomain will give you more flexibility. * This post contains affiliate links, which means that if you click on one of the product links and then purchase the product, well receive a small fee. No worries though, youll still pay the standard amount so theres no cost on you r part.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.