How to fix the WordPress white screen of death
If you’re an advanced user and you’re comfortable using an FTP client (don’t worry if you aren’t; we’ll explain how to use one shortly) you should turn on WP_DEBUG
to determine why your site is white screening. When active, WP_DEBUG
mode displays error messages on the white screen that explain why your site isn’t working properly. You can use those messages as a guide in troubleshooting the issue.
That said, not everyone is comfortable using WP_DEBUG
, and that’s ok! There are other ways to find out what’s causing the white screen of death. We’ll begin with one of the most frequent culprits: plugins.
Scenario 1: Plugins
If there’s anything good about the white screen of death, it’s that the “death” part is only hyperbole. Nobody actually dies because of the white screen of death; however, you may have to kill off a plugin – that is, deactivate it – to make the white screen go away.
When the white screen of death appears, always ask yourself: What was I doing just before my site stopped working? There’s a good chance you were doing one of the following:
- activating a plugin in WordPress
- changing the settings for an active plugin
- modifying an active plugin’s backend code
If you were doing any of those things, all you have to do is navigate to the Plugins page in WordPress and deactivate the plugin you were modifying.Problem solved! After deactivating the plugin, you should see your content restored to its former glory. If you were modifying a plugin’s backend code when the white screen appeared and would like to use that plugin again, you will need to delete it from WordPress and upload an original, unmodified version of the same plugin from the WordPress Plugin Directory.
However, there are cases when you can’t deactivate the offending plugin because the white screen of death also appears in place of your WordPress Dashboard. Not only can your audience not access your content, but you can’t make changes in WordPress either.
When this happens, you will have to use an FTP (file transfer protocol) client to access your WordPress files and delete or deactivate the plugin you were modifying. If you’ve never used an FTP client to make changes to your WordPress installation, don’t worry! It’s easy to do, and several FTP clients are free. The video below covers the basics of FTP and will get you up and running with a free FTP client.
Got your FTP client? Logged into your server using the credentials provided by your web host? Well done. Now just follow these steps to delete the plugin in question and say goodbye to the white screen of death:
- Navigate to the directory where your WordPress files are located.
- Open the
wp-content
folder. - Inside the
wp-content
folder, locate theplugins
folder. - Open the
plugins
folder and locate the plugin you were working on just before the white screen of death appeared. - Delete the plugin. You might have to highlight the plugin and right-click it to find an option that will delete it from your WordPress installation. In the event you don’t want to delete the plugin, you can rename the folder for that plugin (e.g.
akismet
becomesakismet_inactive
or similar), which will deactivate it. - Return to your browser and refresh your website. The white screen of death should be gone and you should be able to log in to WordPress.
Plugins are frequent offenders in white screen scenarios. Either of the solutions above – deactivating the problem plugin through WordPress or using FTP to delete or deactivate it – will help many users restore their websites to working order.
Always remember to use plugins that are actively supported by the developer and compatible with the latest version of WordPress. Out-of-date plugins are more likely to cause problems resulting in the white screen of death.
Scenario 2: Code
So, you weren’t working on a plugin when the white screen of death reared its head, but you were modifying your theme’s functions.php
file or another PHP file via the WordPress Theme Editor. You might even see a message like this on your white screen:
Parse error: syntax error, unexpected $end in /home/name/public_html/wordpress/wp-content/themes/your_theme/functions.php on line 231
This means there’s a flaw in your code. WordPress can’t work if your code is broken, so you’ll have to revisit the file you were modifying and change it back to how it was before the white screen appeared.
The problem, of course, is that you may not be able to be able to access the file because a white screen stands between you and the WordPress Theme Editor. This is very likely to be true if you were modifying functions.php
when you were thwarted by the white screen of death. The best way to fix the problem is to upload a working version of the file (we’ll use functions.php
as an example) to WordPress using your FTP client.
After logging in to your server, the process should unfold as follows:
- Navigate to the directory where your WordPress files are located.
- Open the
wp-content
folder. - Inside the
wp-content
folder, locate thethemes
folder. - Open the
themes
folder and locate the folder for your current WordPress theme. - Open the folder for your current WordPress theme and verify that the file titled
functions.php
is in the folder. - Upload a working version of
functions.php
. This can be a copy of the file you saved to your hard drive prior to performing maintenance on the livefunctions.php
or it can be the original version that came with your theme. In the event you don’t want to overwritefunctions.php
, you can rename the folder for your current theme, which will deactivate it and revert to the default WordPress theme. At this point, you can manually remove any offending code from thefunctions.php
file in the inactive theme and reactivate it when you’re ready. - If you opted to switch out the non-working
functions.php
for a working version and your FTP client asks whether you want to overwritefunctions.php
, respond in the affirmative. - Return to your browser and refresh your website. The white screen of death should be gone and you should be able to log in to WordPress.
A good way to avoid this scenario is to use a child theme instead of modifying the parent functions.php
file. That way, you can add changes to your theme without losing any of the original code that your theme needs to work properly. At The Theme Foundry, we strongly recommend using child themes to make changes to your theme’s PHP!
In the event you do opt to modify the original PHP file that came with your theme, always save a copy of the live, working version somewhere on your hard drive before making changes. Doing so ensures that you can perform the above operation if you encounter the white screen of death.
Scenario 3: Cause unknown
Sometimes, the white screen of death appears for mysterious reasons. You weren’t modifying any plugins, nor were you rewriting your theme’s code. You were just minding your own business when all of a sudden… WHAM! White screen of death! How can you troubleshoot the issue when there’s no obvious cause for it?
It’s situations like this when WP_DEBUG
really comes in handy. Not sure why you’re white screening? Just read the error message and remove, modify, or overwrite the file that’s breaking your site. Even if you’re not using WP_DEBUG
, fear not. There are other ways to bring your website back.
Due to the complexity and general finickiness of WordPress plugins, there’s a good chance a plugin is the source of the problem. Maybe a plugin is out of date or a plugin update didn’t mesh with something else on the WordPress backend. In any case, you will have to deactivate all of your plugins and reactivate them one by one until you identify which one is causing the problem.
Using your FTP client, log in to your website’s server. Then follow these steps to find the plugin causing the white screen of death:
- Navigate to the directory where your WordPress files are located.
- Open the
wp-content
folder. - Inside the
wp-content
folder, locate theplugins
folder. - Rename the
plugins
folder. This will automatically deactivate all of your plugins. You can rename the folder anything you like, but we recommend choosing something that won’t confuse you if you have to leave your FTP client and reconnect to the server before completing this task. The titleplugins_inactive
works nicely. - Log in to your WordPress Dashboard. If the white screen of death is gone and you’re able to log in, you’ll know that one of your plugins is, in fact, causing the white screen.
- Change the name of the renamed folder back to
plugins
. Now all of your plugins should appear on the Plugins page in WordPress, but they will be inactive. Start reactivating them, one by one. When the white screen reappears, you’ll know which plugin is to blame. - Return to your FTP client and delete the problem plugin.
If you get to Step 5 above and your site is still white screening, the issue could be related to one of your themes. The solution is to perform an identical process for your themes
folder, which also lives inside wp-content
. Rename the themes
folder and reactivate all of your themes individually until you see the white screen again.
Other possible causes
At The Theme Foundry, plugin and child theme coding mishaps are the most common white screen scenarios we encounter in our support forums. The solutions discussed above will help most WordPress users wrest their websites from the white screen’s death grip and restore their content to its rightful place on the web.
That being said, there some other reasons your site might be white screening. If you’ve determined that neither plugins, themes, nor code are the source of your problem, here are a few other possibilities:
- Caching: Maybe you use a caching plugin to boost WordPress load times. If so – and you’re still seeing the white screen even though you’ve run through the steps above – you might just need to clear your site’s cache. In the event you can’t clear the cache because you still can’t access WordPress, clear your browser cache. If your site comes back, resume the troubleshooting steps you were following initially.
- Corrupted file(s): Your WordPress files or database may be corrupted due to malware or another cause. Contact your web host and ask them to diagnose the problem.
- Server down: Check your email. Many hosting providers notify customers when servers are down, whether it’s planned downtime or not. If there aren’t any messages from your web host, give them a call. There could be a server issue they haven’t diagnosed yet.
One way or another, you will eliminate the white screen of death. Even if you have to restore your site from a backup, which is a last resort option, the white screen will go away. You will come out on top.
Half the battle is knowing how to troubleshoot. Now that you know how, your site should be back in action in minutes.