How To Work on Your WordPress Site Without Going Live

how-to-work-on-your-wordpress-site-without-going-live

Work on your WordPress site without going live

So, you want to make some changes to your WordPress site without anyone else seeing?
Perhaps it’s a new site you’re getting ready to launch, or maybe you’re giving a facelift to an existing site. How can you work on your WordPress site without publishing the changes for the world to see?

You have a few options depending on your specific situation.

Use a “Coming Soon” style plugin

One approach is to put up a temporary splash page or landing page which displays a “coming soon” or “maintenance mode” style message. This can be done easily with a plugin; the one I’d recommend is Coming Soon by SeedProd. Any normal visitor who tries to access your site will see the custom message you create and nothing else. You, as the administrator, will be able to see the site as normal while logged in. The Coming Soon plugin gives you ample control over the splash page, where you can add text, images, a logo, background image etc.

Pros

  • You can make all kinds of changes – content, design etc – without anyone seeing.
  • Easy to implement

Cons

  • If your site is live and receiving traffic, this would provide a poor user experience since they can’t access any pages, only the coming soon message.

This method will work best if your site is new, doesn’t receive much traffic, or you just need to take it offline for a short period of time.

Work Locally

If you need to keep a site fully accessible to the public, but you need to make significant and disruptive changes, making a local development version of the site would be a great way to go. My favorite tool for this is DesktopServer. Check out this tutorial to see how you can copy your live site to your local computer. Since all work is then carried out on the local version, the live site will remain undisturbed.

Pros

  • Your current will remain live and accessible to all visitors
  • Once you’ve gone to the effort of copying your live site, you now have a testing version you can use for the future.

Cons

  • It takes some work to copy your site locally and then push the changes back to the production site.
  • It’s possible that your local set up will not 100% replicate your live hosting environment and in some cases that could cause unexpected behaviour. e.g. different versions of PHP, Apache vs. NGINX etc

Use a subdomain or other testing domain

This is very similar to the concept of making a local development version, except that instead of making the copy locally, it will be a live site on the internet

Pros

  • In some cases, moving files between folders on the same server is easier than back and forth between local and live.
  • Your server environment for both the live and development version would be the same.

Cons

  • You have to either delete it afterwards, or maintain it as you would a normal site, since it’s accessible via the internet, therefore susceptible to hackers etc

Use the staging feature of your webhost

Some webhosts provide the awesome feature of one-click staging environments. At the click of a button, they copy your website to a special staging URL where you can make your changes. It’s an automated equivalent to the previous option, but much easier. Often, there will also be an easy way to push the changes you made,  back to your live site.
Some webhosts that provide this feature are: FlyWheel, WP Engine, and  Siteground.

Pros

  • Very easy to implement

Cons

  • Not all hosts provide this option

Use a theme switching plugin

If the primary task you need to do is activate and work on a different theme behind the scenes, then using a plugin like Theme Switcha could be the way to go. It allows you to keep one theme active for regular site visitors, but enable a different one for admin users, so that you can configure the new one behind the scenes until you’re ready to make the switch.

Pros

  • Very easy to implement

Cons

  • Only works if changing the theme is the only change you need to make

Have I missed any other scenarios or methods? Post a comment if so!