WordPress guide
How to Update WordPress Safely Using a Staging Site
In short
Copy the live site to a staging site, run the core, theme and plugin updates there, and test the pages and forms that matter. Then back up the live site and repeat the updates on it, or push the changed files across while keeping the live database.
Most WordPress updates go through without a problem. The ones that don't can take a site down with a PHP fatal error or a blank page, and on a shop that means lost orders. A staging copy lets you find out first.
What breaks during updates
- PHP compatibility. A plugin update needs a newer PHP version than your site runs, or uses a function your version has removed.
- Database changes. Some plugins change their database tables when they update, and rolling the plugin back doesn't undo them.
- Theme conflicts. A custom theme relies on a function or hook that a core or plugin update changes.
1. Create the staging copy
If your cPanel has a staging tool (Softaculous and WP Toolkit both offer one), use it: it copies the files and database to a subdomain such as staging.yourdomain.co.uk and rewrites the URLs. Otherwise, create a subdomain and copy the site to it with a plugin such as Duplicator.
2. Update staging
Run the updates on staging in this order: WordPress core, then the theme, then plugins. It's also the place to test a PHP upgrade, for example from 8.1 to 8.3, using cPanel's PHP version tool (MultiPHP Manager or Select PHP Version, depending on the server).
3. Test what matters
Click through your main pages, submit the contact form, and on a shop, place a test order. Check the browser console for JavaScript errors and the error_log file in cPanel. To log PHP warnings without showing them to visitors, add this to wp-config.php on staging:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);Warnings then appear in wp-content/debug.log. If something breaks, deactivate the plugin or roll back the PHP version on staging and look for a fix before going near live.
4. Update the live site
Take a fresh backup of the live site first. Then either run the same updates on live in the same order, or use your staging tool's push option to copy only the files, so orders and sign-ups taken since you made the copy aren't overwritten. Check the live site straight away and clear the cache.
If something breaks on live
Deactivate the plugin that caused it by renaming its folder in wp-content/plugins with File Manager, or restore last night's backup from JetBackup in cPanel.
WordPress hosting with daily backups
LiteSpeed servers, cPanel, free SSL and daily JetBackup backups you can restore in a few clicks, from £2.50 a month.
See hosting plansQuestions
Do I need a staging site for every update?
Not for minor WordPress security releases, which install automatically and rarely break anything. Use staging for major core versions, theme updates, big plugins such as WooCommerce or page builders, and PHP upgrades.
Will a staging site hurt my SEO?
Not if search engines can't index it. Tick Discourage search engines in the staging site's settings, or password-protect it.
What if an update breaks the live site?
Rename the plugin's folder in wp-content/plugins to deactivate it, or restore the previous day's backup from JetBackup in cPanel.