WordPress critical error: what it means and how to fix it
The message "There has been a critical error on this website" means a piece of code on your site, almost always a plugin or theme, has crashed PHP (the programming language WordPress runs on). Check the inbox of your sit
The short answer
The message “There has been a critical error on this website” means a piece of code on your site, almost always a plugin or theme, has crashed PHP (the programming language WordPress runs on). Check the inbox of your site’s admin email for a message from WordPress with a recovery mode link, log in through that link and deactivate the plugin or theme it names.
If no email arrived, disable the plugin you most recently updated by renaming its folder over SFTP, or restore a backup from before the problem started. Your content is not lost; the site is just unable to finish loading.
What it means
Every page on a WordPress site is built on the fly by PHP code: the WordPress core, your theme and each active plugin. If any one of those pieces hits a fatal error (a mistake the code cannot recover from), PHP stops immediately and nothing further is built.
Since WordPress 5.2, WordPress catches that stop and shows the calm “critical error” page instead of a blank screen. At the same time it tries to send an email to the admin address set under Settings > General. That email names the plugin or theme that failed and includes a special link that opens recovery mode: a logged-in session where the broken extension is paused so you can reach the dashboard and switch it off.
Visitors see the same error page, so the site is effectively down until the faulty code is disabled. The database, your pages, posts, orders and media are all untouched.
Common causes
- A plugin update that introduced a bug or clashes with another plugin. This is the cause in the large majority of cases, and it often appears minutes after an update ran.
- A theme update or a hand edit to a theme file, most often
functions.php. A single missing semicolon is enough. - A PHP version change. An old plugin that worked on PHP 7.4 may fail outright on PHP 8.x because it uses functions that no longer exist.
- Running out of memory. The error text will mention “Allowed memory size exhausted”. The fix for that is covered in our memory limit article.
- Damaged files. An update that was interrupted halfway, or malware that has altered core files, can leave code that no longer runs.
How to fix it
- Look for the recovery email. Search your inbox and spam folder for the subject “Your Site is Experiencing a Technical Issue”. Click the link, log in, then go to Plugins > Installed Plugins. The paused plugin is highlighted; click Deactivate. If a theme is named, go to Appearance > Themes and activate a default theme such as Twenty Twenty-Five. This step works on any host.
- No email? Disable the suspect plugin by hand. Connect over SFTP (a secure way to browse your site’s files) or open File Manager in the management console (Plesk with WP Toolkit). Go to
wp-content/pluginsand rename the folder of the plugin you updated last, for exampleplugin-nametoplugin-name.off. WordPress treats a renamed plugin as deactivated. Reload the site. - Not sure which plugin? Rename the whole
pluginsfolder toplugins.off. If the site comes back, rename it topluginsagain, then reactivate plugins one at a time under Plugins > Installed Plugins until the error returns. The last one you switched on is the culprit. - Suspect the theme? In
wp-content/themesrename the active theme’s folder. WordPress will fall back to a default theme, as long as one is installed. - Find the exact error. Edit
wp-config.phpand, above the line that reads “That’s all, stop editing!”, adddefine('WP_DEBUG', true);anddefine('WP_DEBUG_LOG', true);. Reload the broken page, then openwp-content/debug.log. Look for a line starting with “PHP Fatal error”; the file path on that line tells you which plugin or theme failed. Set both values back tofalsewhen you are done. - Check the PHP version. In the management console go to Websites & Domains, open your domain and choose PHP Settings. Try PHP 8.3 or 8.4. If an old plugin only runs on an older version, step back temporarily and plan to replace that plugin.
- Still broken? Restore a backup. Use Backup & Restore in the management console to go back to a point before the update. You can restore a single plugin folder rather than the whole site, which keeps any orders or posts added since.
- Afterwards, open Tools > Site Health and clear any warnings it lists, then update the remaining plugins one at a time.
On WP Alpha
If a critical error has taken your site down, you can restore the last good backup yourself from the management console (Plesk with WP Toolkit), from a single file right up to the whole site. Backups run every two hours and are kept for 30 days, so there is always a recent copy from before the problem. If you prefer, you can also send copies to your own Dropbox, Google Drive, Amazon S3 or FTP storage as often as hourly.
Most critical errors come from updates, which is why WordPress, plugin and theme updates on WP Alpha are tested on a staging copy first, with before and after screenshots and an error log check before they go live. You can also create your own staging site with one click in WP Toolkit to try a risky change safely.
Support is available 24/7 by live chat and tickets, with an urgent escalation form if the site is down.
