After years of WordPress debugging, patterns emerge. Here are the 10 bugs I encounter most frequently — and how I resolve each one.
1. White Screen of Death (WSOD)
The classic. Site shows a blank white page. Usually caused by a PHP fatal error (memory limit, incompatible plugin, syntax error in functions.php). Fix: Enable WP_DEBUG via wp-config.php, identify the error, resolve the conflict.
2. Plugin Conflict After Update
Plugin A updates, Plugin B breaks. This happens when two plugins hook into the same WordPress filter with conflicting logic. Fix: Deactivate all plugins, reactivate one by one to isolate the conflict, then find a workaround or replacement.
3. Database Connection Error
"Error establishing a database connection." Usually a hosting issue (MySQL server overloaded) or wrong credentials in wp-config.php after a migration. Fix: Verify credentials, check MySQL status, optimize the database.
4. Mixed Content Warnings (HTTP/HTTPS)
SSL is installed but images and scripts still load over HTTP. Common after migration or SSL installation. Fix: Update site URLs in database, fix hardcoded HTTP references, implement proper redirects.
5. Permalink Issues (404 on All Pages)
Every page except the homepage returns a 404. Usually caused by .htaccess corruption or server rewrite rules. Fix: Re-save permalink settings, regenerate .htaccess, verify mod_rewrite is enabled.
6. Memory Exhaustion
"Allowed memory size exhausted." A plugin or theme is consuming too much RAM. Fix: Increase memory limit temporarily, then identify the offending code with Query Monitor.
7. Slow Admin Dashboard
The front-end loads fine but wp-admin takes 10+ seconds. Usually caused by plugins running heavy operations on every admin page load (heartbeat API abuse, excessive AJAX calls). Fix: Identify and optimize or replace the offending plugin.
8. Broken Media Library
Images show as broken, uploads fail. Causes: incorrect file permissions, full disk space, or corrupted attachment metadata. Fix: Check permissions (755 for dirs, 644 for files), verify disk space, regenerate thumbnails.
9. Email Not Sending
Contact forms submit successfully but emails never arrive. WordPress's wp_mail() relies on the server's mail function, which many hosts block. Fix: Install WP Mail SMTP and configure with a proper SMTP service.
10. Scheduled Posts Not Publishing
"Missed schedule" errors. WordPress cron depends on site visits to trigger. Low-traffic sites miss scheduled events. Fix: Set up a real server cron job to call wp-cron.php at regular intervals.
Got a Bug You Can't Crack?
Describe the issue and I'll diagnose it — usually within a few hours.
Report a Bug