What is wrong with WP Staging plugin?


How it all started

One of our clients had recently mentioned using the WP Staging plugin on his popular WordPress site and he was very happy with it. He claimed that it saved him time and money that was previously spent on developers to test new website features without affecting live site.

This testimony ignited our curiosity so we went into it to see what the fuss is all about, after all maybe it is the silver bullet that we were looking for all this time, maybe it will take down the burden of constant site migrations to a staging server where all changes are thoroughly tested before moving them live? We decided to give it a try.

Let’s do some testing

Fresh WordPress was installed and WP Staging plugin activated, so far so good.

Now we went to main WP Staging page in admin, then to it’s Sites/Start page where we clicked on button to create a new staging site and finally we started cloning process.

Cloning itself took few seconds to complete. It was all ready and now it’s a time to see the results.

After looking at the cloned files and database tables we were startled at first, couple of minutes more and we got slightly concerned, then after a while, worried.

What is staging environment?

By definition staging is an environment for final testing immediately prior to deploying to production and it is meant to mimic production environment as closely as possible.

Best practice is to create a separate server for your staging environment.

Obviously when sites share resources, there’s always a chance that a change in staging could possibly harm the production environment, which should be avoided if at all possible.

What is wrong with WP Staging plugin?

What this plugin does is that it creates a staging site in a subfolder of the live site and copies all live database tables with a new prefix in a same production database.

There are hell of a lot of things that could go wrong if you are making ‘staging’ site like this and we don’t like the idea that our clients are using it on the established and popular sites.

Here is a short list of what could go wrong:

1) Website performance issues

Slowing down the production site because you are running exact site copy on same server resources. This means that same database queries and php calls that you have on live site are now on ‘staging’ and they are taking resources once more! Depending on the plugins and themes that are installed and available resources on your server this could go from little noticeable to getting your server down due to the resource exhaustion.

2) Doubling production database in size with every ‘staging’ site

Having excess tables does mean memory & hard drive space that could be regained & used for other things. You will not notice performance difference on smaller sites but it is huge on established sites with bigger databases.

3) Security

Testing various plugins on a ‘staging’ server like this is just asking for trouble. What will happen if some of the plugins or themes that you are testing are having security holes or they are poorly coded without any optimization, clearly you risk to compromise live site as well since you are sharing database and server resources.

4) SEO

This one may happen if you are not careful. If by mistake some staging urls leaks to search engines – via some plugin, ping service, theme etc. – your search engine ranking will be affected.

Don’t get me wrong, WP Staging is a well coded plugin that works what its developer says it does. There is also a good support for a plugin even in a free version. Its problem is that it is fundamentally flawed because staging should always be done on a separate server. That is the only proper and secure way for making staging site, period. If something goes wrong and site is down well you do not care much since it is a separate staging server right, now imagine same scenario on your live site – you get the picture.

Placing staging site on a live site as a subfolder and sharing its database is lazy at best and at worst very dangerous practice that can put down your live site.

There is a reason why this kind of plugin was not created earlier. Instead of WP Staging it should probably be called Lazy Man’s Staging. Right now it has about 20k active installations, and that is scary.

Should you use WP Staging plugin?

If you have well established site with lots of visits and larger database, do not use this plugin, really, just don’t! It is cheaper to pay for a proper staging server and a developer to do a site migration than to slow down live site with a ‘staging’ database and file clutter. Do you really want to put yourself in a position to knock down your live website?

If you have small personal blog with just a handful of visitors and you do not care if live site goes down than you can use it to save time. But even then be aware that ,if not properly deleted, you could be left with a database and file clutter that could affect site in a long run. If you decide to use it make sure that you properly delete every excess database table and ‘staging’ subfolder after you are done.

As WP Staging grows and becomes more popular I will probably get back and update this article, we would like to hear your opinions and experiences with this plugin so if you have any feel free to post it in the comment section bellow.

Stay secure!

Comments are closed.

stepaniak_lizabeth@mailxu.com munsterdierdre@mailxu.com