Solving the WordPress white screen of death

The "white screen of death" (WSOD) is one of the most frustrating WordPress problems. Your website shows only a white screen without an error message, leaving you unaware of what is wrong. In this article, we help you step by step find the cause and solve it.

What causes the white screen of death?

The WSOD occurs when WordPress encounters a fatal PHP error but cannot display an error message. The most common causes are:

  • Plugin conflicts - A plugin that is not compatible with your WordPress version or other plugins
  • Theme problems - An error in your active theme or child theme
  • PHP memory limit - WordPress has insufficient memory to function
  • Corrupt files - Damaged WordPress core files
  • PHP version incompatibility - Your site is running on a too old or too new PHP version

Step 1: Enable WP_DEBUG

The first step is to make PHP errors visible. You do this via FTP or the file manager in DirectAdmin.

Connect via FTP

First, make an FTP connection to your website. Find the file wp-config.php in the root folder.

Activate WP_DEBUG

Open wp-config.php and find the line:

Change this to:

Save the file and reload your website. Now you should see a PHP error message indicating what the problem is.

Important: Disable WP_DEBUG again after solving the problem, as error messages contain sensitive information.

Step 2: Deactivate plugins via FTP

If you can no longer log into WordPress, you can manually deactivate plugins:

  1. Connect via FTP to your website
  2. Navigate to wp-content/plugins/
  3. Rename the "plugins" folder to "plugins_disabled"
  4. Load your website - does it work now? Then it is a plugin issue
  5. Rename the folder back to "plugins"
  6. Rename individual plugin folders to find the culprit

Systematic testing

  1. Rename plugin folders one by one (e.g., "akismet" to "akismet_disabled")
  2. Test your website after each change
  3. The plugin causing the problem is the one after which your site works again
  4. Remove or update that plugin

Step 3: Check theme

If plugins are not the problem, check your theme:

  1. Via FTP, go to wp-content/themes/
  2. Rename your active theme folder (e.g., "twentytwentyfour_disabled")
  3. WordPress automatically activates a default theme
  4. Does the site work now? Install a different theme or fix your current theme

Tip: Always keep a standard WordPress theme installed for situations like this.

Step 4: Increase PHP memory limit

A too low memory limit is a common cause. There are several ways to increase this.

Via wp-config.php

Add this line to wp-config.php, before the line "That is all, stop editing!":

Via .htaccess

Add to your .htaccess file in the root folder:

Via DirectAdmin

The best and permanent solution is via DirectAdmin:

  1. Log into DirectAdmin
  2. Go to "Select PHP version" or "PHP Settings"
  3. Find "memory_limit" and increase to 256M or higher
  4. Save the settings

For more details about PHP limits, see our article about PHP memory and increasing limits.

Step 5: Restore WordPress core files

Sometimes WordPress files become corrupt. Here is how to restore them:

  1. Download a fresh copy of WordPress via wordpress.org
  2. Via FTP, upload only the wp-admin and wp-includes folders
  3. Also upload loose files in the root folder (except wp-config.php!)
  4. Note: do NOT touch wp-content, your uploads and themes are there

Step 6: Check PHP version

An incompatible PHP version can cause the WSOD:

  1. Log into DirectAdmin
  2. Go to "Select PHP version"
  3. Check which PHP version is active
  4. WordPress 6.x requires at least PHP 7.4, recommended is PHP 8.1 or 8.2
  5. Some older plugins do not work with PHP 8.x - try PHP 7.4

Step 7: Check error logs

If WP_DEBUG gives no output, check the server error logs:

  1. In DirectAdmin, go to "Error Log"
  2. View the last lines for PHP errors
  3. The error message often points directly to the problem

With Theory7 hosting, you always have access to error logs via DirectAdmin.

Common error messages

"Allowed memory size exhausted"

Increase the PHP memory limit as described in step 4.

"Maximum execution time exceeded"

Increase max_execution_time in DirectAdmin PHP Settings to 300 seconds.

"Parse error: syntax error"

There is a typo in a PHP file. The error message shows exactly which file and which line.

"Fatal error: Call to undefined function"

A plugin or theme uses a function that does not exist in your PHP version. Update the plugin or switch PHP version.

Preventive measures

Prevent future WSOD problems:

  • Make regular backups - Use a backup plugin or the backup function in DirectAdmin
  • Test updates on staging - Update plugins and themes first on a staging environment
  • Keep everything up to date - Outdated plugins are the biggest cause of problems
  • Use quality plugins - Choose plugins with good reviews and regular updates

Need help?

If you cannot figure it out, contact Theory7 support. We are happy to help you with solving WordPress problems.