Safe CMS and Plugin Updates: Protocol with Backup and Rollback

Once we took on a project that hadn't been updated in two years: 47 outdated plugins, three of which had known CVEs with a CVSS score of 9.3. After updating without preparation, the site went down for six hours, and recovery cost a sum comparable to a month's revenue. Since then, we have developed a

Development and maintenance of all types of websites:

Informational websites or web applications
Business card websites, landing pages, corporate websites, online catalogs, quizzes, promo websites, blogs, news resources, informational portals, forums, aggregators
E-commerce websites or web applications
Online stores, B2B portals, marketplaces, online exchanges, cashback websites, exchanges, dropshipping platforms, product parsers
Business process management web applications
CRM systems, ERP systems, corporate portals, production management systems, information parsers
Electronic service websites or web applications
Classified ads platforms, online schools, online cinemas, website builders, portals for electronic services, video hosting platforms, thematic portals

These are just some of the technical types of websites we work with, and each of them can have its own specific features and functionality, as well as be customized to meet the specific needs and goals of the client.

Our competencies:

Frequently Asked Questions

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1422
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1288
  • image_websites_belfingroup_462_0.webp
    Website development for BELFINGROUP
    984
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1250
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    988
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    1001

Once we took on a project that hadn't been updated in two years: 47 outdated plugins, three of which had known CVEs with a CVSS score of 9.3. After updating without preparation, the site went down for six hours, and recovery cost a sum comparable to a month's revenue. Since then, we have developed a rigid update protocol that eliminates such situations. This article details concrete steps proven on hundreds of projects — with numbers that help you assess risks.

The average cost of recovering a site after a hack due to an unapplied patch ranges from $500–2k, and downtime losses are even higher. Regular updates reduce these risks by 90% and save up to $900–1.3k per year on support.

Why updating CMS and plugins is critical for security?

Outdated plugins cause 80% of WordPress hacks (data from Sucuri). But broken updates are equally dangerous: updating without a backup and testing can break layout, break custom functions, or cause 500 errors. We guarantee that every stage — from backup to deployment — follows a scheme that minimizes risks.

What is a safe update order?

Safe order: database → CMS Core → plugins → themes. Never update everything at once with the "Update All" button. Before updating, always create a fresh backup (no older than 24 hours) and verify that it can be restored. A full backup of a typical 10,000-page site's database and files takes 15 to 30 minutes.

How to check plugin compatibility before updating?

Before major updates:

  1. Study the changelog for breaking changes.
  2. Check the "Tested up to" field in the repository — compatibility with the current CMS version.
  3. Ensure the plugin works with your PHP version.
  4. Check compatibility with other key plugins (e.g., WooCommerce requires synchronous updates for Stripe, Shipping add-ons).

For example, when updating WooCommerce from 7.0 to 8.0, we encountered incompatibility with a custom delivery module — staging testing caught it before deployment.

Testing on staging: why is it mandatory?

A staging environment allows you to detect conflicts without affecting live users. Here is a comparison of two approaches:

Criteria Update on staging Update on production
Breakage risk Low (isolated environment) High (real users)
Rollback time Fast (delete staging) Complex (restore from backup)
Testing possibilities Full Limited

Create staging via your hosting panel (Kinsta, WP Engine) or manually using WP-CLI.

How to update WordPress and plugins via WP-CLI?

WP-CLI is three times faster than the admin panel. Here are typical commands:

# List plugins with available updates wp plugin list --update=available --format=table # Update a specific plugin wp plugin update woocommerce --dry-run # first dry-run wp plugin update woocommerce # Update all plugins (with caution) wp plugin update --all # Update WordPress Core wp core update wp core update-db # update database schema after core update 

After updating WooCommerce, run wp wc update. This is not optional — without the database schema update, some functions may work incorrectly.

Which updates should be automated?

WordPress supports auto-updates for Core (minor versions enabled by default). Configure in wp-config.php:

// Enable auto-update for major Core versions define( 'WP_AUTO_UPDATE_CORE', true ); // Or only minor (safe patches) define( 'WP_AUTO_UPDATE_CORE', 'minor' ); // Auto-update only security plugins add_filter( 'auto_update_plugin', function( $update, $item ) { $auto_update_slugs = [ 'wordfence', 'sucuri-scanner', 'updraftplus' ]; return in_array( $item->slug, $auto_update_slugs ); }, 10, 2 ); 

What to do when an update fails?

If the site breaks, roll back the plugin to the previous version:

wp plugin install woocommerce --version=8.0.0 --force 

Or restore only the plugin files from the backup, then disable auto-updates for that plugin.

Comparison of automatic vs manual updates

Criteria Automatic Manual with testing
Speed Instant 1-4 hours
Security Risk of conflicts Verified on staging
Suitable for Security plugins, minor patches Major versions, custom solutions

For critical updates, always use manual control.

What's included in our turnkey CMS and plugin update service?

We offer a full cycle:

  • creation of database and file backup;
  • update on a staging environment;
  • compatibility check and functional testing;
  • update on production with monitoring;
  • recommendations for automation and ongoing maintenance.

Our experience spans over 5 years working with projects of any complexity. We have updated more than 200 sites. Order our update service and get a compatibility guarantee. Contact us for a consultation — we will help you choose the optimal update schedule for your project.

Timelines

A scheduled update of 20–30 plugins with staging testing takes 2 to 4 hours. Complex projects with custom modules require up to 8 hours. Contact us for an accurate assessment of your project.