← All samples

WordPress "There has been a critical error" / white screen: triage checklist

0. Don't make it worse

1. Use WordPress's own signals

2. Get the real error message

// wp-config.php, above "That's all, stop editing!"
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );      // writes to wp-content/debug.log
define( 'WP_DEBUG_DISPLAY', false ); // keep errors off the public page
@ini_set( 'display_errors', 0 );

3. Isolate plugins and themes

# WP-CLI (SSH): test without plugins/themes loading
wp plugin list --skip-plugins --skip-themes
wp plugin deactivate NAME --skip-plugins --skip-themes
wp plugin deactivate --all --skip-plugins --skip-themes   # last resort, then re-enable one by one
wp theme activate twentytwentyfive --skip-plugins --skip-themes

4. Environment causes

5. Verify core and plugin integrity

wp core verify-checksums
wp plugin verify-checksums --all   # works for plugins hosted on wordpress.org

6. Fix, then roll forward safely

7. Hand-over note to the site owner

Send a short note covering what broke, the root cause, what was changed, and how to avoid it happening again (staging, auto-update rules, backups).