Your WordPress site is showing a white screen. Or a “There has been a critical error” message. Or the admin is locked behind an infinite redirect. You can’t log in. You can’t access the dashboard. The client is calling.
Don’t panic. WordPress breaks for predictable reasons, and every one of them has a fix that doesn’t require rebuilding from scratch.
Common causes of a broken WordPress site
Plugin conflict or fatal error. The most common cause — a plugin update introduces a PHP error, or two plugins conflict. WordPress 5.2+ has a recovery mode that emails you a special login link, but it doesn’t always work.
Theme error. A broken theme file (usually functions.php) can white-screen the entire site.
PHP version incompatibility. Your hosting upgraded PHP, and an old plugin doesn’t support the new version.
Exhausted memory. WordPress ran out of the allocated PHP memory during a heavy operation.
Corrupted .htaccess. A plugin wrote bad rules to .htaccess, causing redirect loops or 500 errors.
Step-by-step emergency recovery
### Step 1: Check if WordPress Recovery Mode sent you an email
WordPress 5.2+ sends an email to the admin address with a recovery mode link when a fatal error is detected. Check your email (including spam). The link lets you log in with plugins deactivated.
### Step 2: Access via FTP/SFTP
If recovery mode didn’t work, connect to your server via FTP or SFTP.
Disable all plugins at once: Rename the /wp-content/plugins/ folder to /wp-content/plugins_disabled/. This deactivates every plugin instantly. Try loading your site. If it works, rename the folder back and enable plugins one by one to find the culprit.
Switch to a default theme: Rename your active theme’s folder in /wp-content/themes/. WordPress falls back to a default theme (Twenty Twenty-Four or similar). If the site loads, your theme has the error.
### Step 3: Increase PHP memory
Add this to wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
The debug log (/wp-content/debug.log) will show the exact error and file causing the problem.
### Step 4: Fix .htaccess
Rename .htaccess to .htaccess_backup. If the site loads, the issue was bad rewrite rules. Go to Settings → Permalinks and click Save to regenerate a clean .htaccess.
### Step 5: Restore from backup
If nothing else works, restore from your most recent backup. Your hosting provider likely has automated backups (check cPanel, DirectAdmin, or your hosting dashboard).
The one-click solution
OvKit includes an Emergency Recovery feature — a standalone recovery URL that works even when WordPress is partially broken. It provides a minimal interface to disable plugins, switch themes, and access debug information without needing FTP.
FAQ
### WordPress recovery mode email never arrived — what do I do?
Check spam folders. If it’s not there, the email might be blocked by your hosting. Use FTP access (Step 2) instead. Recovery mode emails only go to the admin email address in Settings → General.
### Can I fix a broken site without FTP access?
It’s difficult. If you have hosting panel access (cPanel, DirectAdmin), you can use the File Manager. Some hosts also offer SSH access. If you have zero server access, contact your hosting provider’s support.
### How do I prevent this from happening again?
Stage updates on a test environment before applying to production. Keep regular backups (daily for active sites). Use a hosting provider with one-click rollback. And always test plugin updates one at a time.
Related reads: