
Your WordPress site is down, slow, stuck in maintenance mode, or you can’t log in? The cause is almost always one of a few things: a plugin, the theme, an update that went wrong, or the hosting. This guide, updated for 2026, covers the most common WordPress problems and how to fix them, in the order worth checking.
We have worked with WordPress since 2009, and the story rarely changes: everything was fine yesterday, and today the site shows an error, the dashboard behaves strangely or pages stop loading. The good news is that WordPress itself rarely breaks. The problem usually comes from something around it, and you can find it methodically.
Before you start: three rules
- Take a backup of files and database before you touch anything. If your host makes automatic backups, check that a recent one exists.
- Don’t edit code from the WordPress dashboard. One mistake in a plugin or theme file can take the whole site down, dashboard included.
- Test on a copy if you can. Many hosts offer a staging environment: a copy of the site where you can experiment safely. It’s what we do when a problem isn’t obvious.
WordPress site not working: white screen or “critical error”
A blank page, or the message “There has been a critical error on this website”, means WordPress hit a PHP error it can’t recover from. What to do:
- Check the admin email inbox. WordPress sends an email naming the plugin or theme that caused the error, with a link to recovery mode, where you can switch it off.
- Deactivate the plugins. If you can’t reach the dashboard, connect by FTP or your host’s file manager and rename the
wp-content/pluginsfolder (toplugins-off, for example). If the site comes back, a plugin is to blame: restore the folder name and reactivate them one at a time. - Try a default theme. If plugins aren’t the cause, activate a standard theme such as Twenty Twenty-Five. If the site works, the problem is in your theme.
- Check the PHP version. Old plugins and themes often don’t support recent PHP versions. You can see it under Tools → Site Health, or in your hosting panel.
- Read the error log. With
WP_DEBUG_LOGenabled inwp-config.php, WordPress writes errors towp-content/debug.log. The error line nearly always names the file responsible.
500 Internal Server Error
A 500 error is generic: the server had a problem and doesn’t say which. Three causes cover most cases.
- A corrupted .htaccess file. Rename it by FTP, then go to Settings → Permalinks and save: WordPress creates a fresh one.
- Not enough PHP memory. Heavy themes and plugins can exceed the server’s memory limit. Raise it with
WP_MEMORY_LIMITinwp-config.php, or ask your host to. - A plugin or the theme. Same procedure as above: switch everything off and bring items back one at a time.
Problems after an update
An update to WordPress, a plugin or the theme is when problems most often appear: a function was removed, two plugins conflict, a JavaScript library is no longer compatible.
- Work out what was updated last: it’s the first suspect.
- Deactivate that plugin and check whether the site recovers, clearing your browser cache too.
- If needed, roll back to the previous version of the plugin (from your backup, or from the plugin’s page on WordPress.org) until a fix is released.
- For next time: update on the staging copy first, and keep automatic updates on only for plugins you trust.
Not every plugin stays compatible. Some are no longer maintained by their authors and stop working with new versions of WordPress or PHP. You then have two options: replace it with a maintained equivalent, or have a developer fix it.
WordPress stuck in maintenance mode
If the site shows “Briefly unavailable for scheduled maintenance. Check back in a minute” and the message never goes away, an update was interrupted halfway. During updates WordPress creates a file called
.maintenance
in the site’s root folder and deletes it at the end. If the update stalls, the file stays.
The fix: connect by FTP or your host’s file manager, delete the
.maintenance
file and reload the page. Then run the interrupted update again.
It’s a different case when you want to put a WordPress site under maintenance on purpose, during a redesign for example. For that, use a maintenance-mode plugin, which shows visitors a holding page while you keep working in the dashboard.
Can’t log in to WordPress
- Password forgotten or rejected: use “Lost your password?” on the login page. If the email never arrives, the site’s outgoing mail is the problem: the password can also be reset from the database or the hosting panel.
- The login page reloads without letting you in: clear your browser cookies and try a private window. If that fails, deactivate the plugins (security and caching plugins first) by renaming the folder.
- You’ve been locked out: security plugins block an IP address after too many failed attempts. The block usually expires on its own, or you can lift it by deactivating the plugin over FTP.
- The site address was changed by mistake: if you edited “WordPress Address” or “Site Address” in the settings, you can correct them in
wp-config.phpor in the database.
Slow WordPress site
A slow site isn’t “broken”, but it loses visitors and Google rankings. The usual causes, most frequent first:
- Underpowered hosting. A plan costing a few euros a month struggles with a heavy theme, WooCommerce or real traffic.
- No caching. Without a cache, every page is rebuilt from scratch on every visit.
- Oversized images. Photos uploaded at full resolution, with no compression or modern formats such as WebP.
- Too many plugins, or a few badly written ones. Deactivate and delete the ones you don’t use.
- A bloated database full of revisions, temporary data and tables left behind by removed plugins.
Tools → Site Health gives you a first picture. Proper WordPress website speed optimization goes further than a plugin: it looks at hosting, database queries, caching layers and the theme’s code together.
Hacked WordPress site
The signs: redirects to unknown sites, pages or administrator users you didn’t create, warnings from Google (“This site may be hacked”) or from your host.
- Change every password now: WordPress, hosting, FTP and database.
- Restore a clean backup from before the attack, if you have one.
- Update everything: WordPress, theme and plugins. Most attacks exploit outdated plugins.
- Delete what you don’t use: deactivated plugins and themes are still an open door.
- Review the users and remove administrators you don’t recognise.
Cleaning a compromised site without leaving a way back in is delicate work: if the problem returns after a clean-up, malicious code is still somewhere on the server.
The problem is in the dashboard
Sometimes the public site works but the dashboard doesn’t: images won’t upload, the editor won’t save or stays blank, buttons don’t respond. It is nearly always a JavaScript conflict between plugins, or between a plugin and the theme. Clear your browser cache, try another browser, then deactivate plugins one at a time until the problem disappears.
How to stop it happening again
- Automatic backups, stored away from the site’s own server.
- Regular updates, tested on a copy first.
- Few plugins, well chosen and maintained by their authors.
- Hosting sized for the site, on a supported PHP version.
- Planned WordPress support and maintenance, not emergency call-outs.
Frequently asked questions
Why did my WordPress site suddenly stop working?
Most often because of an automatic update to WordPress, a plugin or the theme, a PHP version change made by the host, or because the server ran out of disk space or memory.
Does deactivating plugins delete my data?
No. Deactivating a plugin, including by renaming its folder, does not remove its settings or data: they stay in the database and come back when you reactivate it. Data is lost only if you delete the plugin and it is built to clean up after itself.
Will switching theme lose my content?
Posts, pages and images stay. Widgets, menus and theme-specific settings can change or temporarily disappear, and return when you switch the theme back.
How much does it cost to get a WordPress site fixed?
It depends on the cause. A plugin conflict is quick to resolve; a compromised site or a theme that needs fixing requires analysis first. We always start with a diagnosis and a written quote before any work.
Can’t fix it yourself? We can take it from here: see our WordPress development and maintenance services or get in touch. We usually reply within 24 hours.