How to Fix a Broken WordPress Theme: A Step-by-Step Recovery Guide
To fix a broken WordPress theme, switch to a default theme under Appearance > Themes, or-if you are locked out-rename the active theme folder over FTP so WordPress falls back to a default theme. First deactivate recently installed plugins one by one to rule out a plugin conflict, then enable WP_DEBUG to read the real error message.
A broken WordPress theme is one of the most alarming problems a site owner can hit: a blank white screen after a theme change, a layout that loads half-styled, or a dashboard you can no longer reach. The good news is that almost every broken WordPress site is recoverable, and your content is rarely lost. This guide walks through a calm, repeatable troubleshooting process-whether you can still log in or you are completely locked out-so you can get your site back online and stop the same theme from breaking again.
First, confirm it is the theme-not a plugin or cache
Before you touch theme files, rule out the two most common culprits. A plugin conflict and a stale cache cause the same symptoms as a broken theme, and fixing the wrong thing wastes time. Clear your caching plugin and your hosting cache first, then load the site in a private browser window. If the problem persists, move on to plugins.
Plugins are the number-one cause of a WordPress site that breaks after an update, so isolate them next. If you can reach wp-admin, go to the Plugins page and deactivate your plugins-either all at once or, better, one by one. Reload your site after each one. When the site recovers, the last plugin you disabled is the conflict; leave it deactivated and contact the plugin developer. If deactivating plugins does not help, the theme itself is the likely cause, and the steps below apply.
If you cannot open the Plugins page at all, you can still disable every plugin manually: connect over FTP, open wp-content, and rename the plugins folder to plugins_off. WordPress treats the missing directory as “no active plugins,” which lets you back into the dashboard. Rename it back, then reactivate each plugin individually to find the broken one.
If you can still log in: switch to a default WordPress theme
When the dashboard still loads, the fastest fix is to swap themes. Go to Appearance > Themes and activate a default WordPress theme such as Twenty Twenty-Five (the official WordPress.org guide to using themes covers activating and deleting themes safely). If your site renders correctly on the default theme, you have confirmed the problem is theme-specific. From there you can decide whether to reinstall the original theme, revert to an earlier version, or move to a more reliable alternative.
If activating a default theme fixes the white screen but you want to keep your original design, reinstall the theme from a fresh, current copy. An outdated theme that is no longer compatible with the latest version of WordPress is a frequent cause of layout and compatibility issues, so always install a version that is compatible with the latest WordPress core.
If you are locked out: swap the theme over SFTP or FTP
A truly broken theme is one cause of the WordPress white screen of death; if your blank screen is not theme-related, that guide walks through the full diagnosis across plugins, memory, and core files. When the theme is the culprit and you have no dashboard access, restore it via FTP (or the safer SFTP) instead of the admin. This is the single most reliable recovery move when you are locked out:
- Connect to your server with an FTP/SFTP client (FileZilla) or your host’s file manager in cPanel.
- Navigate to
wp-content/themes. - Rename the active theme’s folder-for example,
my-themetomy-theme-off. - WordPress can no longer find the active theme, so it automatically falls back to a default theme and your dashboard returns.
Once you are back in, log in to wp-admin, confirm the site loads, and then troubleshoot the original theme on a staging site rather than live-WordPress.org documents activating and managing themes in its Themes screen reference. Renaming files via FTP changes nothing in your database, so your posts, pages, and settings stay exactly where they were.
Find the real error with WP_DEBUG
A blank white screen hides the actual PHP error. To see it, enable WordPress debugging. Edit your wp-config.php file over FTP and set debugging to true:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
With logging on, WordPress writes every PHP error to wp-content/debug.log. Reload the broken page, then open that log: it usually names the exact theme file and line that triggered the failure. A fatal “out of memory” message points to a low PHP memory limit-raise it in wp-config.php with define( 'WP_MEMORY_LIMIT', '256M' ); or ask your hosting support to bump it. WordPress.org maintains a guide to common WordPress errors that maps each message to its fix. Once you have read the error, set WP_DEBUG back to false so visitors never see raw error messages.
Fix a theme that broke after an update
If your WordPress theme broke immediately after an update, the update process likely overwrote a working file or introduced a version that is not yet compatible with your plugins. You have three reliable options:
- Revert from a backup. Restore the theme-or the whole site-from a recent backup taken before the update. A good backup of your site is the fastest way to get your site back to a known-good state. See our WordPress backup strategy for business websites to make sure you always have one.
- Reinstall the latest version. Delete the broken theme and reinstall the latest, stable release directly from the theme developer. This replaces any corrupted or modified files with clean originals.
- Roll back the update. If the new theme version is the problem, reinstall the previous version and pause auto-updates until the developer ships a fix that is compatible with the latest WordPress version.
Whatever you choose, take a fresh backup first. If the original update also touched WordPress core or your plugins, confirm those are healthy too-sometimes the theme only appears broken because a companion plugin failed during the same update.
Fix a broken child theme or custom code
If you run a child theme or added custom code, that is the next place to look. A single typo in a child theme’s functions.php can take down the entire site with a fatal PHP error. Open the file over FTP and review your most recent edits; if you cannot spot the problem, rename the child theme’s functions.php to disable your customization temporarily and confirm the site recovers.
Never edit core files or paste unfamiliar custom code straight into a live theme. Test changes on a staging site first, and keep customizations in a child theme so a parent-theme update can never overwrite your work. If a snippet broke the site, removing it from functions.php is usually enough to restore access immediately.
After recovery: confirm performance and stability
Getting the site back online is only half the job-now make sure it is fast and stable. Re-enable your plugins one at a time and check your site after each, so a lingering conflict cannot resurface. Clear every cache layer, then test a few key pages and your Core Web Vitals to confirm the theme renders cleanly on mobile and desktop.
If the same theme keeps failing, that is a signal to evaluate a better-maintained option. A theme that ships timely updates and stays compatible with the latest WordPress core will break far less often. For a structured post-incident review, follow our WordPress maintenance checklist for business websites.
Quick-fix checklist
- Clear your caching plugin and hosting cache, then reload in a private window.
- Deactivate plugins (one by one) to rule out a plugin conflict before blaming the theme.
- Switch to a default WordPress theme via Appearance > Themes.
- Locked out? Rename the active theme folder in
wp-content/themesover FTP to force a default theme. - Enable
WP_DEBUGand readdebug.logto find the real PHP error. - Restore from a recent backup or reinstall the latest version of the theme.
- Check a child theme’s
functions.phpfor custom code that broke the site. - Reactivate plugins and re-test performance once the site is back.
When to call a WordPress support team
Most theme problems are fixable in under an hour with the steps above. But if you have no recent backup, cannot access the server, or the error persists after a clean reinstall, bring in help before you risk further damage. A managed WordPress hosting provider can often restore a server-level snapshot, and an experienced team can diagnose a stubborn fatal error fast. If you would rather hand it off, our WordPress support team can recover a broken site and harden it against the next failure. For wider diagnostics, see our full WordPress troubleshooting guide and the steps to fix the WordPress critical error.
Frequently asked questions
How do I fix a broken WordPress theme?
Switch to a default WordPress theme under Appearance > Themes. If you are locked out, rename the active theme’s folder over FTP so WordPress falls back to a default theme, then deactivate recently installed plugins to rule out a conflict and enable WP_DEBUG to read the underlying error.
Why did my theme break after an update?
An update can overwrite a working file or ship a version that is not yet compatible with your plugins or your WordPress version. Revert from a backup, reinstall the latest stable release from the theme developer, or roll back to the previous version until a compatible update is available.
Will I lose my theme customizations when fixing the theme?
Not if your customizations live in a child theme-switching themes or renaming a folder over FTP does not delete files or touch your database. Customizations stored directly in a parent theme can be lost on reinstall, which is exactly why a child theme and a current backup matter.
How do I fix a broken theme if I cannot access wp-admin?
Use FTP or SFTP. Connect to your server, open wp-content/themes, and rename the active theme’s directory. WordPress automatically activates a default theme, which restores access to the dashboard so you can finish troubleshooting.
Can a theme cause the WordPress white screen of death?
Yes. An incompatible theme, a syntax error in a child theme’s functions.php, or an exhausted PHP memory limit can all leave a blank white screen. Enable WP_DEBUG to reveal the exact error in debug.log. For the full white-screen diagnosis across plugins, memory, and core files, see our WordPress white screen of death guide.
Should I edit the theme files directly to fix it?
Avoid editing core files or live parent-theme files directly. Test changes on a staging site, keep edits in a child theme, and always take a backup first. Direct edits to a live theme are a common way to turn a small problem into a fully broken site.
How long does it typically take to fix a broken WordPress theme?
With a recent backup and FTP access, most fixes take 10-30 minutes-long enough to swap to a default theme, read the debug log, and reinstall or restore. Cases without backups or with server-level errors take longer and may need your hosting provider.
How do I stop my theme from breaking again?
Keep automatic backups, test updates on a staging site before applying them live, store customizations in a child theme, and choose themes that stay compatible with the latest WordPress version. A simple maintenance routine prevents most repeat failures.