Skip to content
PHP security alert Two critical PHP flaws (php2shell) were fixed on 21 October. Is your site's PHP patched? Check in a minute →
OvKit
Menu
Download free

How to Recover a Broken WordPress Site (Emergency Guide)

White screen of death? Fatal error? WordPress recovery mode not working? Here's your emergency guide to getting back in when everything is broken.

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

The Pro add-on for Ovanap Admin Toolkit includes Emergency recovery: a secret link that switches off every plugin except the toolkit and changes to a default theme, so you can log in again without FTP. A second link undoes it, and both links are emailed to the admin address when you turn it on. It is a must-use plugin, so it loads before regular plugins. Pro costs $3.99/month or $39/year; checkout is not open yet, so join the waitlist.

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: