1 February 2024

How to update plugins on WordPress on a production site avoiding errors and prolonged downtime

Effective WordPress update management: how to perform backups and rollbacks to maintain site stability and security

WordPress Plugin Update

Updating WordPress plugins is a routine operation for site managers, but it can be tricky if not done carefully , especially in a production environment. Sometimes, a quick update is necessary: ​​it may be to fix critical security issues or to install versions of plugins that, due to their history and reliability, are considered secure. However, it's always important to take precautions to avoid errors and downtime , even when updating in a production environment.

1. Preparation: Backup and Caution

Before proceeding with any update, it is essential to make a complete backup of the site and database. This step is crucial not only as a precautionary measure, but also as a recovery strategy in case of problems, allowing you to restore the site to the previous version without significant data loss.

Making a backup means creating an exact copy of everything on the site: posts, pages, comments, settings, and the database, which is the beating heart of the site. The WordPress database contains everything from user information to blog posts and site settings. A regular and complete database backup is therefore essential.

In addition to the database, it is essential to back up all site files, including WordPress core files, themes, plugins, and uploaded media. This ensures that, in the event of a failed update or hacker attack, it is possible to restore the entire structure and contents of the site.

Filezilla FTP

As for backup methods, using protocols like FTP or SSH is recommended. FTP (File Transfer Protocol) is a popular and accessible method that allows you to transfer files from a website to your local computer or external storage device. SSH (Secure Shell), on the other hand, offers a higher level of security, protecting data during transfer and managing large files more efficiently.

For MySQL databases, you can use PhpMyAdmin, a powerful web-based management tool that greatly simplifies working with MySQL databases. Through its intuitive interface, PhpMyAdmin allows you to perform a variety of operations, such as importing, exporting, and manipulating data. This tool is particularly useful for creating WordPress database backups, allowing administrators to easily perform backups and restores, thus ensuring greater security and flexibility in data management.

PHPMyAdmin

Keeping backups in a secure location, separate from the production server, is equally important. You can opt for cloud storage services such as Google Drive, Dropbox or Amazon S3, or for physical storage devices such as external hard drives. In either case, it is essential that these backups are accessible and protected from accidental loss or damage to the server.

Finally, it's wise to back up individual plugins as well, especially if you only plan to update some of them, not all of them. This allows you to have a backup of each plugin in its current version, which can be invaluable in case of problems with new versions. It's a good idea to document the current version of each plugin and track the changes made in each update. This facilitates the rollback process and helps quickly identify the possible causes of any issues that arise after the update. For critical plugins, such as those for e-commerce or membership management, it's even more important to perform regular backups to ensure that essential site functionality can be quickly restored in the event of a serious malfunction.

2. The Update: Step by Step

Updating WordPress plugins should be done carefully and methodically, working only one plugin at a time . This approach allows you to precisely isolate and identify any issues that may arise, making it easy to pinpoint the specific plugin responsible for any malfunction.

After updating any plugin, it's essential to thoroughly test your site. This process includes checking the backend and frontend functionality, as well as verifying the correct functioning of the newly updated plugin. It's during this phase that any errors may emerge, which can manifest themselves in various ways.

One of the most immediate types of errors to recognize is that at the PHP level, which usually presents itself as an "internal error" or the words "A critical error has occurred on your website". These errors are often the result of compatibility issues or bugs within the plugin and are generally detectable immediately after the update.

WordPress Critical Error

Sometimes, after updating a plugin in WordPress, errors may occur that arise from different sources. One of the most common reasons is an error in the PHP code of the updated plugin. These errors may be due to bugs introduced by the developer in the latest version, which may cause malfunctions or conflicts within the site.

Another common cause of post-update issues is compatibility with other plugins installed on the site. WordPress plugins often interact with each other, and an update can change the way one plugin interacts with others. If an updated plugin is incompatible with the current versions of other installed plugins, this can lead to malfunctions or even site crashes.

Additionally, the version of the PHP interpreter used by the web server can play a crucial role. If the server is running an outdated version of PHP, the updated plugin may not be compatible, as many plugin developers optimize their products for newer versions of PHP. Likewise, if the server is running a very recent version of PHP, some older plugins may not yet be updated to support it, thus causing compatibility issues.

However, there are errors that can be more subtle and less obvious. These errors appear even though the plugin appears to be working properly . They can include, for example, incorrectly calculated shipping costs, failure to send emails, or flaws in the site's business logic. These errors are particularly insidious because they may not be immediately obvious and could cause significant long-term problems if the plugin is not fully and thoroughly tested across all its features and applications.

Therefore, it's essential not only to update carefully, but also to dedicate sufficient time to post-update testing to ensure every aspect of the site functions as expected and that no new issues have been introduced. This kind of attention to detail is crucial to maintaining the integrity and functionality of a WordPress site, especially in a production environment.

3. Plan B: Rollback

If serious issues arise while updating a plugin, it's crucial to be able to rollback, or revert to the previous version of the plugin. The ability to do this efficiently and safely depends on the availability of backups made prior to the update. These backups, which include previous versions of the plugin, are essential for ensuring a quick and safe restore.

When a critical issue occurs, acting quickly is crucial to minimize the impact on site operations and user experience. The rollback process involves removing the problematic version of the plugin and replacing it with the previous version, retrieved from backup files. This step should resolve any issues introduced by the update and restore the site to normal functionality.

This rollback procedure is an important safety measure in the management and maintenance of a WordPress site. It allows site administrators to manage updates with greater confidence, knowing they can quickly roll back if an update doesn't go as planned. Ultimately, the ability to perform an efficient and reliable rollback reduces the risk of prolonged downtime or persistent issues on the site, thus ensuring more stable and secure management.

Conclusions

Updating WordPress plugins in a production environment requires attention, preparation, and caution . By following these steps and recommendations, you can reduce the risk of errors and downtime. However, it's always recommended, whenever possible, to test in a staging environment before proceeding with the update in production. The security and stability of a WordPress site are heavily dependent on these processes, so a methodical and thoughtful approach is essential.

Do you have doubts? Don't know where to start? Contact us!

We have all the answers to your questions to help you make the right choice.

Chat with us

Chat directly with our presales support.

0256569681

Contact us by phone during office hours 9:30 - 19:30

Contact us online

Open a request directly in the contact area.

DISCLAIMER, Legal Notes and Copyright. RedHat, Inc. holds the rights to Red Hat®, RHEL®, RedHat Linux®, and CentOS®; AlmaLinux™ is a trademark of the AlmaLinux OS Foundation; Rocky Linux® is a registered trademark of the Rocky Linux Foundation; SUSE® is a registered trademark of SUSE LLC; Canonical Ltd. holds the rights to Ubuntu®; Software in the Public Interest, Inc. holds the rights to Debian®; Linus Torvalds holds the rights to Linux®; FreeBSD® is a registered trademark of The FreeBSD Foundation; NetBSD® is a registered trademark of The NetBSD Foundation; OpenBSD® is a registered trademark of Theo de Raadt; Oracle Corporation holds the rights to Oracle®, MySQL®, MyRocks®, VirtualBox®, and ZFS®; Percona® is a registered trademark of Percona LLC; MariaDB® is a registered trademark of MariaDB Corporation Ab; PostgreSQL® is a registered trademark of PostgreSQL Global Development Group; SQLite® is a registered trademark of Hipp, Wyrick & Company, Inc.; KeyDB® is a registered trademark of EQ Alpha Technology Ltd.; Typesense® is a registered trademark of Typesense Inc.; REDIS® is a registered trademark of Redis Labs Ltd; F5 Networks, Inc. owns the rights to NGINX® and NGINX Plus®; Varnish® is a registered trademark of Varnish Software AB; HAProxy® is a registered trademark of HAProxy Technologies LLC; Traefik® is a registered trademark of Traefik Labs; Envoy® is a registered trademark of CNCF; Adobe Inc. owns the rights to Magento®; PrestaShop® is a registered trademark of PrestaShop SA; OpenCart® is a registered trademark of OpenCart Limited; Automattic Inc. holds the rights to WordPress®, WooCommerce®, and JetPack®; Open Source Matters, Inc. owns the rights to Joomla®; Dries Buytaert owns the rights to Drupal®; Shopify® is a registered trademark of Shopify Inc.; BigCommerce® is a registered trademark of BigCommerce Pty. Ltd.; TYPO3® is a registered trademark of the TYPO3 Association; Ghost® is a registered trademark of the Ghost Foundation; Amazon Web Services, Inc. owns the rights to AWS® and Amazon SES®; Google LLC owns the rights to Google Cloud™, Chrome™, and Google Kubernetes Engine™; Alibaba Cloud® is a registered trademark of Alibaba Group Holding Limited; DigitalOcean® is a registered trademark of DigitalOcean, LLC; Linode® is a registered trademark of Linode, LLC; Vultr® is a registered trademark of The Constant Company, LLC; Akamai® is a registered trademark of Akamai Technologies, Inc.; Fastly® is a registered trademark of Fastly, Inc.; Let's Encrypt® is a registered trademark of the Internet Security Research Group; Microsoft Corporation owns the rights to Microsoft®, Azure®, Windows®, Office®, and Internet Explorer®; Mozilla Foundation owns the rights to Firefox®; Apache® is a registered trademark of The Apache Software Foundation; Apache Tomcat® is a registered trademark of The Apache Software Foundation; PHP® is a registered trademark of the PHP Group; Docker® is a registered trademark of Docker, Inc.; Kubernetes® is a registered trademark of The Linux Foundation; OpenShift® is a registered trademark of Red Hat, Inc.; Podman® is a registered trademark of Red Hat, Inc.; Proxmox® is a registered trademark of Proxmox Server Solutions GmbH; VMware® is a registered trademark of Broadcom Inc.; CloudFlare® is a registered trademark of Cloudflare, Inc.; NETSCOUT® is a registered trademark of NETSCOUT Systems Inc.; ElasticSearch®, LogStash®, and Kibana® are registered trademarks of Elastic NV; Grafana® is a registered trademark of Grafana Labs; Prometheus® is a registered trademark of The Linux Foundation; Zabbix® is a registered trademark of Zabbix LLC; Datadog® is a registered trademark of Datadog, Inc.; Ceph® is a registered trademark of Red Hat, Inc.; MinIO® is a registered trademark of MinIO, Inc.; Mailgun® is a registered trademark of Mailgun Technologies, Inc.; SendGrid® is a registered trademark of Twilio Inc.; Postmark® is a registered trademark of ActiveCampaign, LLC; cPanel®, LLC owns the rights to cPanel®; Plesk® is a registered trademark of Plesk International GmbH; Hetzner® is a registered trademark of Hetzner Online GmbH; OVHcloud® is a registered trademark of OVH Groupe SAS; Terraform® is a registered trademark of HashiCorp, Inc.; Ansible® is a registered trademark of Red Hat, Inc.; cURL® is a registered trademark of Daniel Stenberg; Facebook®, Inc. owns the rights to Facebook®, Messenger® and Instagram®. This site is not affiliated with, sponsored by, or otherwise associated with any of the above-mentioned entities and does not represent any of these entities in any way. All rights to the brands and product names mentioned are the property of their respective copyright holders. All other trademarks mentioned are the property of their respective registrants. MANAGED SERVER® is a European registered trademark of MANAGED SERVER SRL, with registered office in Via Flavio Gioia, 6, 62012 Civitanova Marche (MC), Italy and operational headquarters in Via Enzo Ferrari, 9, 62012 Civitanova Marche (MC), Italy.

JUST A MOMENT !

Have you ever wondered if your hosting sucks?

Find out now if your hosting provider is hurting you with a slow website worthy of 1990! Instant results.

Close the CTA
Back to top