Anyone managing the WordPress website for a long period of time would have heard of this error or would have faced this error once in a lifetime for sure.
If your website is facing this error, this article will help you get back your website up and running like it was earlier.
The WordPress community refers this white screen error as the White Screen of Death error. In short form, it’s called as WSoD error.
We will resolve the error with six strategic steps and I will write down a tip in the end that would help you prevent the error occurring in the future. The process will be to address the most common problems to least common problems.
- Memory limit
- Common issue
- Plugin issue
- Theme issue
- Framework issue
- Restore backup
- Prevention tip
You can see this PHP memory limit setting under php.ini file. The PHP memory limit would vary from host to host.
There is a default memory allocation specified in WordPress framework’s core file. You can refer to this file under wp-includes/default-constants.php
The default memory limit for single website installation is 40mb and for multisite installation it’s 64mb. In a majority of the cases, you will be under single installation 40mb bucket.
Extending the default memory limit is the first thing we will perform to address the issue. To do that we need to edit the wp-config.php file residing at the root for your web hosting server.
Login to the cPanel. You can login to the cPanel using Your-Website.com:2082 and providing the correct credentials.
You should be able to see the list of files and directory. Select the wp-config.php file and hit the edit button on the top of the navigation.
If in case a popup appears you need to hit the edit button. That popup usually asks about the encoding format of your document. By default, it selects the UTF-8 encoding and its fine.
You need to add the following code at the end of the wp-config.php file:
Once done hit the save and close file button. Try opening your website in a new browser tab. If you see your website is loading, you have correctly addressed the issue. If not you need to follow the further steps.
Before diving deeper into the other more technical fix let’s address some more common issue.
Do you have other WordPress website(s) hosted on the same server? Try opening that website in different browser tabs.
Do you find the same issue persist with another website as well? Well, then you have nothing to worry about. There is a technical glitch on your web server. You need to do nothing.
If yours the only site facing the white screen issue, then we may need to look a deeper into the problem and try other solutions.
We all love plugins, we love WordPress because we have a large number of available plugins. But do you know that sometimes plugins are the root cause of this white screen error?
Plugin, in a nutshell, is a piece of PHP code that utilizes the WordPress libraries and offers a unique set of extended functionality.
Not all plugins made the same and not all developers follow the standard plugin development practice. A poorly coded plugin could cause more harm than the additional functionality you expect.
If you ever read the sucuri WordPress security report, you will find that the plugins are the root cause of in majority of successful hack/malware attacks.
Back to the point, we need to disable all the plugins in order to check if there was a plugin causing the white screen error.
To do that we need to rename the plugin directory. Login to your cPanel as you did earlier. You should be able to see a list of directories. Double click the wp-content directory.
Do you see the plugins directory? Yes, rename it to plugins-bkp. What happens when you rename the plugin directory?
When you rename the plugin directory the WordPress will try finding the installed and activated plugins on the old path (/wp-content/plugins) but it wouldn’t find anything. So it tries loading website without plugins.
Try opening your website into a new browser tab. If plugins were the issue you must be able to load your website correctly. Next, we need to find which plugin was actually causing the issue?
Finding the faulty plugin?
What makes a plugin faulty plugin? It’s the code underlying the plugin package. Poorly written code and code conflicting with other plugins or framework makes a plugin faulty plugin.
In many cases, a plugin would work just fine until you update your WordPress framework or install another plugin. In any case, that plugin is facing the compatibility issue.
Always check the plugin compatibility with your installed version of WordPress framework. And also read the comments and help thread if anyone has any issue using the plugin.
Let’s find the faulty plugin. The process will be short and easy if you have very limited number of plugins installed.
As you are logged into the cPanel, go to the Plugins directory under the wp-content. Please revert the Plugin name change that we did in the last step. The directory should read Plugins only.
You should now be able to see a list of available plugins, here is the plugin directory snapshot of my setup:
What we do next is, we will rename each plugin turn by turn. In my case, I would first rename the add-to-any plugin directory.
After renaming the plugin try loading the website in a new browser tab, repeat the process until you find the problematic plugin.
Remove the plugin from the WordPress admin area and remove the plugin directory from the cPanel. You now have a working WordPress website again.
What if renaming the Plugins directory doesn’t resolve the issue? We need to check whether the theme is causing the issue.
Themes are not much problematic in general. But we addressed memory, common and plugin issues, it’s worth having a look at the themes issue as well.
In some cases, a poorly written theme can cause the code conflict with plugins or core framework. And this would result in a white screen error.
To address this issue we may need to fall back to the WordPress default theme (twenty sixteen or other) to check if it resolves the issue.
As we can’t load the website, how come we switch the theme? There is a way, you need to rename the currently active theme.
In WordPress when you rename the currently active theme, WordPress fallbacks to the latest default theme.
Login to your cPanel, go to the wp-content/themes. You should be able to locate the currently active theme directory. Rename that directory.
Once renamed, try loading website on the new browser tab. Do you see your website loading correctly? Then there was an issue with your theme.
Download a fresh theme copy from your website author’s website, install and activate the theme from your WordPress admin panel.
If you see the white screen again, you probably need to ask the theme author about the issue. It should be a compatibility issue between your theme and updated framework/plugin.
What if theme changing doesn’t resolve your issue?
If switching to the default theme is not resolving the issue, we may need to check the core framework files for the issue.
If you are a power user or you know programming well, you can check the error log generated on your server to identify the file(s) causing the issue.
Additionally, we can turn the error reporting on to display the errors on the screen instead of just the white screen. But let’s say you don’t want to get into those coding thing. Here is the easier solution.
I would request you to backup the server root directory before proceeding the further steps, just to make the rollback possible.
Download the WordPress framework and extract the archive on your computer. Now start replacing the files under wp-includes and wp-admin directories. Don’t replace the wp-config.php file.
Try loading the website. If there was a faulty or corrupted core WordPress framework file causing the issue, it should be resolved now. You should be able to load your website fine.
You should backup your entire website on regular intervals as you do with your accounting systems.
A full website backup will help you sort out the errors in a matter of minutes. In a case of hacks or malware attacks, these backups prove to be a lifesaver thing.
We have tried our best to make your existing website work fine again so you don’t have to loose any of your pages, post, and data.
But if nothing works, it’s the time you need to restore the last full backup you took. You may loose some data if you have added after the backup. But it’s always a good idea to have a functional website than a white page error.
If in case you don’t want to restore the backup, you can seek a professional help to resolve the issue.
Get the junk out from your WordPress website. Unnecessary plugins and themes are referred as junk here.
Don’t install themes or plugins for fun. Setting up a local development server would be an easy and good idea for these tasks.
Be active in managing your site, when you think you no longer need a plugin(s), remove them immediately. And the same rule applies to themes.
Keep your WordPress framework, plugins and theme up to date. Regularly visit your WordPress admin area for updates.
Regularly backup your WordPress website. Updraftplus would be a good free plugin to make this regular backup an automated task.
Install only those plugins which are supported for your existing WordPress framework version. Read the feedback and visit the help forum to make sure you are installing the right one.
Here is the abstract of entire article:
- Keep everything up to date
- Remove unused plugins and themes
- Regularly backup your website
- Extend the WordPress execution limit
- Try renaming plugin directory to identify plugins issue
- Rename theme directory to trace the theme issue
- Restore the latest backup if nothing works.
Author bio: Darshan is the founder of AlphansoTech a WordPress development company. He loves to write an insightful and action oriented how to guides on WordPress. He loves web application development and WordPress is his new passion. You can connect with him on LinkedIn and Twitter.