Stay calm, because your content is almost certainly safe. The WordPress critical error message means a plugin, theme or piece of code has crashed, and the usual fix is to find the culprit, switch it off and restore a working version. Most sites are back within an hour once you know where to look.
What the critical error actually means
WordPress runs on PHP. When something in that code hits a problem it cannot recover from, WordPress stops and shows the message “There has been a critical error on this website.” It used to be a blank white screen, which was far less helpful.
The most common causes are a plugin update that clashes with another plugin, a theme that does not support your PHP version, a failed update that stopped halfway, or a site running out of memory.
Step 1: Check your email
WordPress usually sends a message to the site’s admin email address with the subject “Your Site is Experiencing a Technical Issue.” It names the plugin or theme at fault and includes a special recovery mode link. Check your spam folder too. If the link works, log in, deactivate the named plugin and you may be done.
Step 2: Think about what changed
Errors rarely appear from nowhere. Ask yourself:
- Did a plugin, theme or WordPress update run recently?
- Did someone install or edit a plugin or add code to the theme?
- Did your host change the PHP version?
Whatever changed last is your first suspect.
Step 3: Switch off plugins without logging in
If you cannot reach the dashboard, use your host’s file manager or SFTP. Open the wp-content folder and rename the plugins folder to plugins-off. This disables every plugin at once. Reload your site. If it returns, rename the folder back, then rename plugins one at a time inside it until the broken one reveals itself.
If the site is still down, repeat the idea with your theme: rename the active theme’s folder inside wp-content/themes and WordPress will fall back to a default theme if one is installed.
Step 4: Read the error log
Your hosting control panel often has an error log, and it will name the exact file and line that failed. You can also switch on WordPress debug logging by setting WP_DEBUG and WP_DEBUG_LOG to true in wp-config.php. The log appears in wp-content as debug.log. Turn debugging off again once you are finished, because logs can expose details you do not want public.
Step 5: Restore or roll back
If you cannot pin the cause down, restoring last night’s backup is often the fastest route. This is exactly why a tested backup matters, and we cover how to set one up in our guide to WordPress advice on the Skink blog. Many hosts also let you change the PHP version in a couple of clicks, which fixes the error when an old theme meets a newer PHP release.
How to stop it happening again
- Take a full backup before every update.
- Test updates on a staging copy of the site first.
- Remove plugins you no longer use rather than leaving them switched off.
- Choose well-maintained plugins and themes with recent update dates.
- Keep an eye on PHP versions so nothing is left behind.
This is the heart of proper WordPress development and ongoing care. A site that is monitored, backed up and updated carefully rarely reaches the point of a critical error, and if it does, recovery is quick. If your site relies on lots of third-party plugins, a custom plugin built for your exact needs can also reduce the number of moving parts that can clash.
For a broader look at keeping your site healthy, the team at Defyn Digital works with Australian businesses on hosting and ongoing technical support.
When to call for help
If you have tried the steps above and the site is still down, or you are not comfortable editing files on your server, stop and ask. Guessing can turn a small problem into a bigger one. Every minute offline can cost you enquiries or sales, so a quick call is worth it.
Stuck with a broken site? Call the Skink team on 02 9834 4119 or get in touch through our contact page and we will help you get back online.
Need a WordPress website, theme or plugin built properly? We would love to help.
Start a project
