Home/Blog/WordPress Fixes
WordPress Fixes

How to Fix a Broken WordPress Website: Step-by-Step Guide (2026)

By Christy Sparks
Published Mar 19, 2026
10 min read

WordPress sites break in predictable ways. The good news is that most breakages have a small number of causes, and a methodical approach fixes the large majority of them. This guide walks through how to diagnose and fix the most common failures, in the order we would check them, without making things worse.

Before you touch anything

  1. Take a backup. Use your host's backup tool, or copy your files and export your database. If something goes wrong later, you can go back
  2. Work out what changed. A plugin or theme update, a WordPress update, a new plugin, a host change, an edit to a file. Most breakage follows a change within a day or two
  3. Change one thing at a time and write down what you did, so you can undo it
  4. Do not delete things you do not recognize. If the site might be hacked, they are evidence. See what to do if your WordPress site was hacked

White screen of death or "critical error"

The site loads blank, or shows "There has been a critical error on this website." This is almost always a PHP error from a plugin or theme update.

  1. Check your email. WordPress often sends the admin address a recovery mode link that names the plugin or theme that crashed
  2. Turn on debugging by adding define('WP_DEBUG', true); and define('WP_DEBUG_LOG', true); to wp-config.php. The error appears in wp-content/debug.log
  3. Using FTP or your host's file manager, rename wp-content/plugins to plugins-off. If the site returns, a plugin is the cause. Rename it back and reactivate plugins one at a time to find the culprit
  4. If that does not help, rename your active theme's folder inside wp-content/themes. WordPress falls back to a default theme
  5. Check your hosting control panel for a recent PHP version change. An old plugin on a newer PHP version is a classic cause

Error establishing a database connection

WordPress cannot reach its database. Check DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST in wp-config.php. Then log into your hosting panel and confirm the database exists and the user has permissions. If the credentials are right, the database server itself may be down or overloaded, and your host can tell you. You can also add define('WP_ALLOW_REPAIR', true); to wp-config.php and visit /wp-admin/maint/repair.php to repair damaged tables. Remove that line afterward.

500 internal server error

  1. Rename .htaccess in your site's root folder. If the error clears, go to Settings → Permalinks in the dashboard and save to regenerate it
  2. Raise PHP memory with define('WP_MEMORY_LIMIT', '256M'); in wp-config.php, or ask your host to raise it
  3. Check your host's error log for the exact line. It usually names the file and plugin
  4. Deactivate plugins by renaming the plugins folder, as above

All pages show 404 except the homepage

This is usually a permalink problem. Go to Settings → Permalinks and click Save without changing anything. If that does not fix it, check that .htaccess exists and is writable, or that your server's rewrite rules are enabled. On nginx hosts, your host has to adjust the server configuration.

Stuck in "briefly unavailable for scheduled maintenance"

An update was interrupted. Delete the file named .maintenance from your site's root folder using FTP or the file manager (you may need to enable showing hidden files). Then re-run the update.

Layout broken after an update

  • Clear every cache: your caching plugin, your host's cache, and your CDN
  • Hard refresh the browser, or test in a private window
  • Temporarily switch to a default theme to see whether your theme is the problem
  • If you use a page builder like Elementor, update it and your theme together, and regenerate its CSS

Locked out of the dashboard

  • Use "Lost your password?" first. If the email never arrives, your site may not be sending email at all
  • If you are stuck in a login redirect loop, clear your browser cookies and check that the siteurl and home values in the database match your real address
  • You can reset a password directly in the database with phpMyAdmin (the wp_users table), or create a new admin with WP-CLI if you have it
  • If you find admin users you did not create, treat it as a hack

Forms and emails stopped working

WordPress sends mail through your host by default, and many hosts block or limit it. Install an SMTP plugin and connect it to a proper email service so messages are authenticated. Test a form after any update. Many "broken forms" are really delivery problems.

Prevent the next breakage

  • Keep automatic backups stored away from the same server
  • Update on a staging copy first for important sites, then the live site
  • Delete plugins and themes you do not use, and replace abandoned ones. Our guide on spotting abandoned plugins shows how
  • Keep PHP and WordPress reasonably current, and update plugins weekly rather than yearly
  • Use our maintenance checklist or a plan like Sparks Care

When to stop and get help

If you have worked through the basic steps and the site is still down, if you see unfamiliar files or users, or if every hour offline costs you money, stop experimenting. Our WordPress emergency help page explains how it works, and the emergency guide covers what not to touch in the meantime. A Quick Fix is $175 for a single clearly defined problem and includes a diagnosis, the repair, and testing.

Site still broken?

Tell us what you are seeing and what changed. We will tell you what is wrong and what it will cost before we touch anything.

Get My Site Fixed →

Common questions

Q: Why did my WordPress site suddenly break?

Most sudden breakage comes from a plugin, theme, or WordPress update that conflicts with something else, from a PHP version change at your host, or from a hacked or full-disk situation. Check what changed in the last day or two first.

Q: How do I fix the WordPress white screen of death?

Turn on debugging to see the real error, then deactivate plugins by renaming the plugins folder over FTP or your hosting file manager. If the site returns, re-enable plugins one at a time. If it does not, rename the active theme folder to fall back to a default theme.

Q: Can I break my site further by trying to fix it?

Yes. Always take a backup first, change one thing at a time, and write down what you changed. Do not delete files you do not recognize, because on a hacked site they are evidence.

Q: How much does it cost to have someone fix a broken WordPress site?

A single clearly defined problem is often a $175 quick fix with us. Plugin conflicts, theme breakage, and hacked-site cleanup cost more depending on how much work they take. See our full guide to WordPress repair costs.

Q: When should I stop and get help?

If you have worked through the basic steps and the site is still down, if you see files or users you do not recognize, or if the site is how you make money and every hour costs you, get help rather than experimenting.

← Back to All Posts