“There has been a critical error on this website.”
Something in your site's code crashed and WP stopped. Get it back by hand first. Then add the free plugin: next time, its chat finds the cause.
Is your site down right now?
- Check the inbox of your site's admin email for “Your Site is Experiencing a Technical Issue”. It names the plugin or theme that crashed.
- Open the link in that email to log in with the plugin paused. Go to Plugins and press Deactivate under it.
- No email? Open the file manager in your host's control panel, then wp-content/plugins. Add -off to the folder of the plugin you last changed.
- Reload your site. Still down? Rename the plugins folder itself to plugins-off. If the site now loads, a plugin is the cause.
- Still down? Ask your host to check your site's error log. Tell them when it broke and what you changed last.
CMSHands can't be installed into a site that won't load. These steps come first.
A person approves every repair. Install it before anything breaks.
Needs WP 6.3 to 7.1 and PHP 8.0 or newer. What it installs
Needs WP 6.3 to 7.1, PHP 8.0 or newer, and an administrator login. One site per install.
The download is a plugin. Turning it on connects your site to cmshands.com and adds 3 small rescue files. Deleting the plugin removes them and everything it stored. What we send
Plugins are installed from a computer. Get the plugin here instead
- No account, no password to share
What it means
“There has been a critical error on this website.” means code in a plugin, theme or WP itself hit an error it can't get past, so WP stopped.
- A plugin update with a bug, or one that clashes with another plugin or your theme.
- Your host moved to a newer PHP version (the language WP runs on; your host sets its version), and an older plugin or theme can't run on it.
- A code snippet pasted into your theme's functions.php file, with a typo or a missing bracket.
- Your site ran out of memory. The error log says “Allowed memory size … exhausted”.
- An update that stopped halfway and left a plugin's files missing or half-copied.
What you see
Visitors see one line, “There has been a critical error on this website.”, and a link to WP's help pages. Logged in, you see more: “Please check your site admin email inbox for instructions.”
It often breaks every page, your dashboard too (the screens you log in to at yoursite.com/wp-admin). Sometimes only one page breaks, because only that page runs the broken code.
Your posts and pages are still in your database. WP stops before it can show them.
How to find the cause
The recovery-mode email
WP emails the Administration Email Address set in Settings › General. The subject ends in “Your Site is Experiencing a Technical Issue”. It names the plugin or theme, and the file and line that failed.
Its link logs you in to recovery mode. There, the broken plugin is paused for you only, so you can switch it off. The link runs out after a day.
WP sends at most one of these emails a day, and some hosts can't send mail at all. Look in your spam folder. Still nothing? Use the error log.
The error log
You can ask WP to write every error to a file. Open wp-config.php in your site's main folder with the file manager. Above the line with “That's all, stop editing!”, add these 3 lines:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );
The last one keeps errors off your pages. Reload the broken page. Then open wp-content/debug.log and find the last line that starts with “PHP Fatal error”.
That line ends with a file path. If it has wp-content/plugins/ in it, the next folder name is the plugin that crashed. If it has wp-content/themes/, it's your theme.
Many hosts also keep an error log in their control panel. When you're done, set WP_DEBUG back to false. Anyone who guesses the log's address can read it.
How to fix each cause by hand
A plugin
Switch it off in recovery mode, or rename its folder in wp-content/plugins, say from contact-form to contact-form-off. WP switches off a plugin it can't find.
Then look at the plugin's page in the WP plugin directory for a newer version or a known problem. If an update caused it, go back to the version that worked. Or leave it off until its makers fix it.
Can't tell which plugin? Rename the whole plugins folder to plugins-off. If the site loads, open Plugins › Installed Plugins once, so WP marks them all as off.
Then rename the folder back to plugins. Switch them on one at a time, and reload your site after each, until it breaks again.
Your theme
If the path points to wp-content/themes/, rename your active theme's folder. Then log in and open Appearance › Themes. WP switches to its default theme, if that's installed.
A snippet pasted into the theme's functions.php file is a common cause. Remove it with the file manager. If it was the cause, the site comes back.
A PHP version change
Did the crash start when your host changed your PHP version? Then an older plugin or theme may not run on the new one. Update it, and if there's no update, ask your host about the version.
Not enough memory
A log line with “Allowed memory size … exhausted” means WP ran out of memory. Add define( 'WP_MEMORY_LIMIT', '256M' ); to wp-config.php, above the same line. Your host may set a lower cap, so ask them if it doesn't help.
A half-finished update
An update that stopped halfway can leave a plugin's files missing. Delete that plugin's folder with the file manager, then install a fresh copy from the WP plugin directory. Its settings stay in your database.
How to stop it coming back
Update one plugin at a time, and open your site after each one. If it breaks, you know which update did it.
Keep the Administration Email Address in Settings › General on an inbox you read. That's where WP sends the recovery-mode email.
Try new code on a test copy of your site first. Many hosts can make one for you. Before big updates, ask your host how you'd put back an earlier copy of your site.
Next time
- When your site crashes, it reads your error log to find the cause, on sites that had CMSHands before they broke.
- We prepare the fix, and a person at CMSHands approves it before it runs. Tried on our test sites; hosts differ.
- It checks your site once a day on the free plan, and at once if your site reports a crash.
More it does here (2)
- The chat tells you in plain English what broke and what it did. So does an email, once you add your address.
- While your site loads, ask “What are the errors on my site?” and it lists the errors in your log.
Why it won't wreck your site
- A person checks every repair. When your site is down you can't reach the chat, so a person at CMSHands approves the fix before it runs.
- It checks your pages after the fix. It loads your home page, login, dashboard and a post again before it calls the repair done.
What it won't do here
- It can't be installed into a site that is already down.A plugin needs a working dashboard to install. Get your site back with the steps above first, then add it before anything else breaks.
- A person approves every repairNothing in a repair runs until a person at CMSHands has checked it. It doesn't fix things alone overnight.
- It can't fix your host or change your PHP versionA server that's down, your PHP version, your domain and your email belong to your host. Ask them about those.
- It doesn't clean up a hacked siteIf someone broke in and changed your files, ask your host or a security company for help.
Questions
How do I fix a critical error in WordPress?
Find what crashed, then switch it off. The recovery-mode email names the plugin or theme and links to a login with it paused. No email? Rename the plugin's folder in wp-content/plugins with your host's file manager. Then update it, go back to the version that worked, or leave it off until it's fixed.
What does “The site is experiencing technical difficulties” mean?
It's the same kind of crash, in older wording. Older versions of WP showed this line when a plugin or theme hit an error it couldn't get past. Newer versions show “There has been a critical error on this website.” The same steps bring your site back: the email, the error log, then renaming the broken plugin's folder.
How do I troubleshoot a WordPress critical error?
Read the error log. Turn on WP_DEBUG and WP_DEBUG_LOG in wp-config.php, reload the broken page, and open wp-content/debug.log. The last “PHP Fatal error” line ends with a file path. The folder after plugins or themes in that path is what crashed. Your host's control panel may have its own error log too.
Is every WordPress error a critical error?
No. A critical error means code crashed and WP stopped. Other errors leave parts of the site running, or show their own message: a warning on one page, a database connection error, or a site stuck in maintenance. Each has its own fix, and the words on screen tell you which one you have.
Can CMSHands fix a critical error on my site right now?
Not if your site is already down without it. A plugin can't be installed into a site that won't load, so get it back with the steps above first. With CMSHands on your site, the next crash is reported at once. It finds the cause, and a person at CMSHands approves the fix. Tried on our test sites; hosts differ.
Written by CMSHands team.
Be ready for the next one
- A person approves every repair
- No account, no password to share