Starter Offer: WordPress Malware Cleanup From $89 Claim on WhatsApp →

WordPress Malware Removal

Professional cleaning and security hardening for just

How to Fix WordPress White Screen of Death: 8 Proven Solutions (2026)

MD Pabel December 16, 2025
AI Summary
WordPress White Screen of Death

Seeing a blank white page instead of your WordPress site is terrifying, but the WordPress White Screen of Death (WSOD) is almost always fixable within minutes. Whether it’s a plugin conflict, memory exhaustion, theme issue, or even malware infection, this comprehensive guide covers 8 proven solutions that have helped me restore thousands of crashed WordPress sites.

After cleaning over 4,500 hacked WordPress sites and troubleshooting countless technical issues, I’ve seen every variation of the white screen problem. This guide walks you through the systematic approach I use to diagnose and fix WSOD issues — from the quickest 30-second fixes to advanced malware cleanup that security plugins miss.

🚀 Quick Start: Try These First

  1. Hard refresh your browser (Ctrl+F5 / Cmd+Shift+R) — fixes 20% of cases
  2. Check if wp-admin works — if yes, it’s theme-related; if no, it’s plugin or server-related
  3. Clear all caches — browser, hosting, and WordPress caching plugins
  4. Rename plugins folder via FTP — instantly reveals if plugins are the cause

If these don’t work, continue with the full diagnostic process below.

What Is the WordPress White Screen of Death?

The WordPress White Screen of Death (WSOD) appears when your website displays a completely blank white page instead of your normal content. In newer WordPress versions (5.2+), you might see “There has been a critical error on this website” instead, but the underlying causes are identical.

This happens when PHP encounters a fatal error that stops WordPress from loading completely. Because most hosting providers hide error messages from visitors for security reasons, you see a blank screen instead of helpful debugging information.

Common WSOD Scenarios

Frontend-only white screen: Admin area works, but visitors see blank pages — usually theme-related
Admin-only white screen: Site works, but wp-admin is blank — typically plugin conflicts
Complete white screen: Both frontend and admin are blank — server, memory, or core file issues
Partial white screen: Some pages work, others don’t — specific plugin or content conflicts

Understanding which scenario you’re experiencing helps target the right solution faster.

Step 1: Enable WordPress Debug Mode (Essential First Step)

Before trying any fixes, enable debug mode to see what’s actually causing the crash. This turns the unhelpful white screen into actionable error messages.

How to enable debugging:

  1. Access your WordPress files via FTP or hosting file manager
  2. Open wp-config.php in the root directory
  3. Find the line that says define( 'WP_DEBUG', false );
  4. Replace it with these debugging lines:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
define( 'SCRIPT_DEBUG', true );
  1. Save the file and reload your site
  2. Check /wp-content/debug.log for error messages

The error log will show exactly which file is causing the crash and what went wrong. This information is crucial for applying the right fix.

Important: Turn off debugging once you’ve fixed the issue by changing WP_DEBUG back to false.

Enable WordPress Debug Mode

Step 2: Fix Plugin Conflicts (Most Common Cause)

Plugin conflicts cause roughly 60% of WordPress white screens. A recent plugin update, new installation, or conflict between two plugins can crash your entire site.

Method A: If You Can Access wp-admin

  1. Go to Plugins → Installed Plugins
  2. Select all plugins using the checkbox at the top
  3. Choose Deactivate from the Bulk Actions dropdown
  4. Click Apply
  5. Check if your site loads normally
  6. If fixed, reactivate plugins one by one to identify the culprit

Method B: If wp-admin Is Also Blank (FTP Method)

  1. Connect to your server via FTP or hosting file manager
  2. Navigate to /wp-content/
  3. Rename the plugins folder to plugins-disabled
  4. Reload your site — if it works, plugins were the cause
  5. Rename back to plugins to reactivate all plugins
  6. Rename individual plugin folders to isolate the problematic one

This method is faster than WordPress Recovery Mode because it immediately tells you if plugins are involved.

plugins-disabled

Method C: Database Method (Advanced)

If FTP access isn’t available, deactivate all plugins through the database:

  1. Access phpMyAdmin or your hosting database manager
  2. Find the wp_options table (prefix may vary)
  3. Look for the active_plugins option
  4. Change its value from the plugin array to empty: a:0:{}
  5. Save and reload your site

For more advanced plugin troubleshooting techniques, see my guide on preventing fake hidden plugins that can cause persistent crashes.

active_plugins

Step 3: Resolve Theme Issues

If deactivating plugins didn’t fix the white screen, your active theme is likely the culprit. Theme conflicts with WordPress updates, PHP version incompatibilities, or corrupted theme files can cause WSOD.

Switch to Default Theme

Via WordPress admin (if accessible):

  1. Go to Appearance → Themes
  2. Activate a default WordPress theme (Twenty Twenty-Four, Twenty Twenty-Three)
  3. Check if the white screen is resolved

Via FTP (if admin is inaccessible):

  1. Navigate to /wp-content/themes/
  2. Rename your active theme folder (e.g., mytheme to mytheme-disabled)
  3. WordPress will automatically fall back to the default theme
  4. Reload your site to test

Common Theme-Related Issues

functions.php errors: Check your theme’s functions.php for syntax errors, missing closing brackets, or deprecated functions
PHP version incompatibility: Older themes may use deprecated PHP functions that crash on PHP 8.0+
Memory exhaustion: Heavy themes with poor coding can exceed your server’s memory limit

If switching themes fixes the issue, contact your theme developer or consider using a more reliable theme. I’ve documented theme security best practices in my WordPress security tips guide.

Step 4: Increase PHP Memory Limit

Memory exhaustion is a leading cause of white screens, especially on sites with multiple plugins, page builders, or high traffic. WordPress requires a minimum of 64MB, but modern sites typically need 256MB or more.

Method A: wp-config.php

Add this line to your wp-config.php file, just before the /* That's all, stop editing! */ line:

ini_set( 'memory_limit', '256M' );

Method B: .htaccess File

Add this line to your .htaccess file in the WordPress root directory:

php_value memory_limit 256M

Method C: php.ini File

If you have access to php.ini, add or modify this line:

memory_limit = 256M

Note: Some managed hosting providers (WP Engine, Kinsta) handle memory limits automatically or require contacting support to increase them.

If memory increase fixes your white screen, investigate which plugins or themes are consuming excessive resources. Tools like Query Monitor can help identify memory-hungry components.

Step 5: Clear All Caches

Corrupted cache files can serve broken versions of your site, creating persistent white screens even after fixing the underlying issue.

Browser Cache

  • Hard refresh: Ctrl+F5 (Windows) or Cmd+Shift+R (Mac)
  • Incognito/Private mode: Test your site in a private browser window
  • Clear browser cache: Use your browser’s clear browsing data option

WordPress Cache Plugins

If you use caching plugins like WP Rocket, W3 Total Cache, or WP Super Cache:

  1. Access the plugin’s settings page
  2. Find the “Clear Cache” or “Purge Cache” option
  3. Delete all cached files
  4. Test your site

Hosting-Level Cache

Many hosting providers offer built-in caching:

  • Cloudflare: Go to Caching → Purge Everything
  • SiteGround: Use SG Optimizer plugin or cPanel cache tools
  • WP Engine: Use the “Clear all caches” button in their portal
  • Kinsta: Clear cache from MyKinsta dashboard

Step 6: Fix Corrupted Core Files

WordPress core files can become corrupted during failed updates, malware infections, or server issues. This is more common than most people realize and can cause persistent white screens.

Reinstall WordPress Core

  1. Download the latest WordPress version from WordPress.org
  2. Extract the ZIP file on your computer
  3. Upload only these folders via FTP, overwriting existing ones:
    • wp-admin/
    • wp-includes/
  4. Do NOT overwrite:
    • wp-config.php (contains your database credentials)
    • wp-content/ (contains your themes, plugins, uploads)
    • .htaccess (contains your permalink structure)
  5. Test your site after the upload completes

Check Specific Core Files

If you suspect specific file corruption, compare these critical files against fresh WordPress downloads:

  • index.php — Main entry point
  • wp-config.php — Configuration file
  • .htaccess — URL rewriting rules

For comprehensive guidance on maintaining WordPress core integrity, see my complete WordPress security guide.

Step 7: Detect and Remove Malware (Advanced)

Malware infections can cause white screens through various mechanisms — corrupted files, resource exhaustion, or incompatible code execution. I’ve encountered specific malware families that consistently trigger WSOD.

Case Study: The “Zeura” Malware Family

One particularly troublesome malware family I frequently encounter uses the signature <?php /*** PHP Encode v1.0 by zeura.com ***/ and employs sophisticated obfuscation to hide malicious payloads in core files.

Typical zeura malware structure:

$XnNhAWEnhoiqwciqpoHH=file(__FILE__);
eval(base64_decode("aWYoIWZ1bmN0aW9uX2V4..."));
eval(base64_decode(YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH)));
eval(ZsldkfhGYU87iyihdfsow(YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH,2),YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH,1)));
__halt_compiler();
// [Encrypted binary data follows]

This malware causes white screens because:

  • PHP version incompatibility: Uses deprecated functions like create_function() removed in PHP 8.0+
  • Memory exhaustion: Attempts to decode large encrypted payloads
  • Syntax errors: Corrupted copy-paste operations during infection

Manual Malware Detection and Removal

1. Check common infection points:

  • index.php (WordPress root)
  • wp-config.php
  • Active theme’s functions.php and header.php
  • Recently modified files in /wp-content/uploads/

2. Look for malware signatures:

  • eval(base64_decode( — Base64 encoded malware
  • gzinflate(base64_decode( — Compressed malware
  • __halt_compiler(); — Self-extracting malware
  • Long strings of random characters in PHP files

3. Use professional scanning:

While manual detection catches obvious infections, sophisticated malware requires professional tools. I recommend running comprehensive scans with both Wordfence and Sucuri for complete coverage.

For sites with persistent white screens that resist standard troubleshooting, malware cleanup may be necessary. I offer professional WordPress malware removal services with a proven track record of resolving complex infections that cause WSOD.

Step 8: Fix File Permission Issues

Incorrect file permissions can prevent WordPress from reading essential files, resulting in white screens. This often happens after site migrations, hosting changes, or security hardening.

Correct WordPress File Permissions

Standard permission structure:

  • Directories: 755 (rwxr-xr-x)
  • PHP files: 644 (rw-r–r–)
  • wp-config.php: 600 (rw——-) for security

Fix Permissions via FTP

  1. Connect to your server via FTP
  2. Right-click on your WordPress root folder
  3. Select “File permissions” or “CHMOD”
  4. Set directories to 755, files to 644
  5. Apply changes recursively to all subdirectories

Fix Permissions via SSH

If you have SSH access, use these commands:

# Set directory permissions
find /path/to/wordpress/ -type d -exec chmod 755 {} \;

# Set file permissions  
find /path/to/wordpress/ -type f -exec chmod 644 {} \;

# Secure wp-config.php
chmod 600 wp-config.php

For detailed guidance on WordPress file permissions and security, see my guide on fixing WordPress file permissions.

When to Restore from Backup

Sometimes the fastest solution is restoring from a recent backup, especially for business-critical sites where downtime costs more than troubleshooting time.

Restore from backup if:

  • Multiple fixes haven’t resolved the issue
  • You suspect complex malware infection
  • The site was working fine within the last 24-48 hours
  • Downtime is costing money or reputation

Before restoring:

  1. Document what you tried so far
  2. Note when the white screen first appeared
  3. Choose a backup from before the issue started
  4. Test the restoration on a staging site first if possible

For reliable backup solutions, I recommend following my UpdraftPlus backup guide to prevent future data loss.

Prevention: Avoiding Future White Screen Issues

Preventing WSOD is easier than fixing it. Based on patterns I see across thousands of sites, implement these protections:

Regular Maintenance

  • Update everything: WordPress core, plugins, themes
  • Remove unused plugins and themes: Inactive code can still cause conflicts
  • Monitor plugin compatibility: Check plugin reviews before updates
  • Use staging sites: Test updates before applying to production

Security Measures

  • Install security plugins: Wordfence, Sucuri, or similar
  • Regular malware scans: Weekly automated security checks
  • Strong access controls: Limit admin users, use strong passwords
  • File editing restrictions: Disable file editing in wp-config.php

Performance Optimization

  • Monitor memory usage: Identify resource-heavy plugins
  • Choose quality hosting: Avoid the cheapest hosting options
  • Optimize images and databases: Reduce server load
  • Use reliable caching: Configure caching correctly

For comprehensive site protection strategies, see my detailed analysis of why cheap hosting makes sites vulnerable and my essential security tips every WordPress owner must know.

When to Seek Professional Help

Some white screen issues require expert intervention, especially when they involve:

  • Complex malware infections that resist standard cleanup
  • Server-level configuration problems beyond WordPress settings
  • Database corruption affecting core WordPress functionality
  • Custom code conflicts in heavily customized sites
  • Recurring white screens that return after fixes

I offer professional WordPress troubleshooting and security services for cases that exceed standard DIY fixes. You can contact me directly for immediate assistance with critical WSOD issues.

FAQ: WordPress White Screen of Death

Why is my WordPress site showing a white screen?

WordPress white screens occur when PHP encounters a fatal error that stops the site from loading. Common causes include plugin conflicts (60% of cases), theme issues, memory exhaustion, corrupted files, malware infections, or server configuration problems. The blank screen appears because most hosting providers hide error messages from visitors for security reasons.

How do I fix WordPress white screen of death?

Start by enabling WordPress debug mode in wp-config.php to see the actual error. Then systematically check: 1) Deactivate all plugins via FTP, 2) Switch to a default theme, 3) Increase PHP memory limit to 256MB, 4) Clear all caches, 5) Reinstall WordPress core files. Most white screens resolve within the first 2-3 steps.

Can I access wp-admin if my site has a white screen?

Sometimes. If only the frontend shows a white screen but wp-admin works, the issue is usually theme-related. If both frontend and wp-admin are blank, it’s typically a plugin conflict, memory issue, or corrupted core files. Try accessing yourdomain.com/wp-admin to test admin availability.

What’s the difference between white screen of death and critical error?

In WordPress 5.2+, you might see “There has been a critical error on this website” instead of a blank white screen. Both indicate the same underlying problem — a fatal PHP error — but the critical error message means WordPress’s error protection activated. The troubleshooting steps are identical for both scenarios.

How do I fix white screen caused by memory limit?

Increase your PHP memory limit by adding ini_set( 'memory_limit', '256M' ); to wp-config.php, or php_value memory_limit 256M to .htaccess. If you can’t edit files, contact your hosting provider. Memory-related white screens often affect sites with multiple plugins, page builders, or high traffic volumes.

Can malware cause WordPress white screen of death?

Yes. Malware can trigger white screens through corrupted code injection, memory exhaustion from crypto mining, or PHP version incompatibilities. Look for suspicious code like eval(base64_decode( in core files, especially index.php, wp-config.php, and theme files. Professional malware removal may be required for sophisticated infections.

How long does it take to fix WordPress white screen?

Simple cases (plugin conflicts, cache issues) typically resolve in 10-30 minutes. Complex issues (malware, corrupted databases, custom code conflicts) can take 1-3 hours. If you have a recent backup, restoration might be faster than troubleshooting. Most white screens (80%+) are fixed within the first hour of systematic troubleshooting.

Should I restore from backup or troubleshoot the white screen?

Restore from backup if: the site was working recently (24-48 hours), you suspect complex malware, multiple fixes failed, or downtime is costly. Troubleshoot manually if: you want to learn what went wrong, no recent backups exist, or you’ve made important changes since the last backup that you don’t want to lose.

Conclusion

The WordPress White Screen of Death looks devastating but follows predictable patterns. By systematically working through these 8 solutions — from quick cache clears to advanced malware removal — you can restore almost any crashed WordPress site.

The key is understanding that white screens are symptoms, not diseases. Enable debugging first to see the real error, then apply the appropriate fix based on the actual cause rather than guessing.

Remember the troubleshooting hierarchy:

  1. Quick wins: Cache clearing, plugin deactivation (fixes 70% of cases)
  2. Common issues: Theme conflicts, memory limits (fixes 20% more)
  3. Advanced problems: Corrupted files, malware, permissions (fixes remaining 10%)

Most importantly, implement preventive measures after fixing the immediate issue. Regular updates, proper backups, security monitoring, and quality hosting prevent most white screen problems from occurring in the first place.

If you’re dealing with a persistent white screen that resists these solutions, or you need immediate professional assistance, I offer WordPress critical error fix services with same-day resolution for urgent cases. For ongoing protection, consider implementing the security measures outlined in my comprehensive WordPress maintenance checklist.


About the author: Md Pabel is a WordPress security specialist who has personally cleaned over 4,500 hacked WordPress sites and resolved thousands of white screen emergencies. He documents real-world WordPress troubleshooting techniques and security best practices at mdpabel.com.

Explore Our Security Services

About the Author

MD Pabel

MD Pabel

MD Pabel is the Founder and CEO of 3Zero Digital, a leading agency specializing in custom web development, WordPress security, and malware removal. With over 8+ Years years of experience, he has completed more than 3200+ projects, served over 2300+ clients, and resolved 4500+ cases of malware and hacked websites.

Read Next