Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
The WordPress “critical error” message means a PHP failure stopped the site from running normally; the message alone does not identify the cause. Start with the Recovery Mode email, then isolate the failing plugin, theme, or custom code through file access and error logs. If the evidence points to the server or you lack the required access, contact your host.
1. Check WordPress Recovery Mode first
Recovery Mode has been built into WordPress since version 5.2. When WordPress detects certain fatal PHP errors during a normal page load, it can email the site administrator a special sign-in link. The documented trigger applies to regular page loads, not every background or CRON task.
Find and use the recovery link
- Check the configured site administrator’s inbox, including the spam or junk folder.
- Open the recovery email and use its sign-in link.
- Log in to WordPress and read the notice identifying the plugin or theme that was paused for your administrator session.
- Temporarily deactivate, update, repair, or replace that component.
- If the notice points to edited theme code such as
functions.php, correct the code before leaving Recovery Mode. - Exit Recovery Mode and test both the public site and
/wp-admin/.
Recovery Mode pauses faulty plugins or themes for the administrator’s session so you can reach the dashboard. It is an access aid, not proof that deactivation permanently solved the underlying problem.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstall2. If the email is missing or wp-admin still fails
Verify the email setup
Confirm which address is configured as the site administrator. Mail can be filtered or blocked because of server mail settings or sender reputation. If no message arrives, continue with file-based troubleshooting.
Deactivate a suspected plugin from the file system
You need FTP access or your hosting provider’s File Manager.
- Open the WordPress installation directory.
- Go to
/wp-content/plugins/. - Rename the folder of the plugin implicated by the recovery notice or log. For example,
hello-dollycan be renamed tohello-dolly-1. - Try loading the site and dashboard again.
Renaming the folder prevents WordPress from loading that plugin. After access is restored, address the compatibility or code problem before restoring the original folder name and reactivating it.
Rank #2
Deactivate every plugin when the culprit is unknown
If no individual plugin is indicated, rename the entire plugins directory, such as to plugins-disabled. This is a broad diagnostic step: it may restore access but can remove forms, caching, security features, and other site functions. Rename the directory back when testing is complete, then reactivate plugins individually to identify the trigger.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsInvestigate the theme and custom code
If plugin isolation changes nothing, use the error details to investigate the active theme, theme edits, snippets, and other custom code. When dashboard access is available, temporarily activate a default WordPress theme. When it is not, use the named file and line in the fatal-error details to locate the faulty code or ask the host to help.
Rank #3
3. Enable a private debug log
When Recovery Mode and component isolation do not reveal the cause, WordPress’s debug log can show the fatal error, affected file, and component name. Back up wp-config.php before editing it.
Add the logging settings
In wp-config.php, place these constants before the line that says “That’s all, stop editing! Happy publishing.” First check whether any of them are already defined; do not add duplicate definitions.
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
WP_DEBUGenables WordPress debugging.WP_DEBUG_LOGwrites errors towp-content/debug.log.WP_DEBUG_DISPLAYset tofalsekeeps raw errors out of pages shown to visitors.
Read the result safely
- Reproduce the critical error once.
- Open
wp-content/debug.logthrough a protected file-management method. - Look for the fatal error, file path, line number, and plugin, theme, or custom-code directory named in the entry.
- Fix or update the identified component only after confirming that it is responsible.
Do not display raw PHP errors on a public production site. After diagnosis, remove or disable temporary debugging settings and ensure the log cannot be publicly downloaded.
4. Match the route to your situation
| Route | Best when | Access needed | Trade-off |
|---|---|---|---|
| Recovery Mode | A recovery email identifies a component | Administrator email and WordPress login | Least invasive; the faulty code is paused only for that admin session, so the cause still needs correction. |
| Rename a suspected plugin folder | The dashboard is unavailable and a plugin is implicated | FTP or hosting File Manager | Can restore access quickly, but disabling the wrong plugin can remove site functionality. |
| Rename the plugins directory | No individual plugin is known | FTP or hosting File Manager | Useful for isolation, but disables every plugin until the directory is restored. |
| Debug logging | Recovery notices are absent or inconclusive | Ability to edit wp-config.php and read logs |
Provides diagnostic detail; display must remain off publicly and temporary debugging should be removed afterward. |
| Hosting support | You lack file or server access, or logs indicate a server-side problem | Hosting account or support channel | The host can inspect its environment and server logs; available assistance differs by provider. |
5. When to contact your hosting provider
Ask the host for help if you cannot access FTP or the File Manager, cannot edit the required files, or the log points to hosting configuration, missing files, resource limits, or another server-level fault. Provide the exact error text, timestamp, affected URL, and relevant log entry without publishing sensitive credentials or full configuration files.
Quick Recap
Best Value
Common mistakes to avoid
- Do not assume every critical error is caused by a plugin; themes and custom code are also common causes.
- Do not change the PHP version as a universal fix. The correct remedy depends on the fatal error and site environment.
- Do not leave
WP_DEBUGenabled with errors displayed to visitors. - Do not treat a deactivated plugin as permanently fixed until its code, compatibility, or configuration issue is resolved.
- Do not reactivate all disabled components at once if you still need to identify the trigger; restore them one at a time and test after each change.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

