How to Fix WordPress: The Complete Guide for Website Owners

How to Fix WordPress: The Complete Guide for Website Owners

Your WordPress site is broken, slow, or showing a scary error β€” and you have no idea what to do next. You’re not a developer. You just need your website to work.

This guide covers the most common WordPress problems and what you can do about each one. Some fixes are straightforward enough to handle yourself. Others are worth handing off to a professional β€” especially when your business depends on every hour of uptime.


1. WordPress Is Down: The White Screen of Death

You open your website and see nothing. A completely blank, white screen. No error message, no hint of what went wrong. This is what developers call the White Screen of Death (WSOD) β€” one of the most common WordPress problems.

What Causes It

  • A plugin or theme conflict (most common)
  • Running out of PHP memory
  • A corrupted theme or plugin file
  • A failed WordPress update

What You Can Try

Step 1: Check if it’s only your admin panel or the whole site. Try visiting yourdomain.com and then yourdomain.com/wp-admin. If only one is broken, that narrows things down.

Step 2: Disable all plugins. If you can still access your hosting file manager (via cPanel or similar), navigate to wp-content/plugins/ and rename the entire folder to plugins_disabled. This forces WordPress to deactivate everything. If your site comes back, a plugin was the culprit β€” re-enable them one by one to find which one.

Step 3: Switch to a default theme. Go to wp-content/themes/ and rename your active theme folder. WordPress will fall back to a default theme like Twenty Twenty-Four. If the white screen disappears, your theme had a problem.

Step 4: Increase PHP memory. Open (or create) the wp-config.php file and add this line before /* That's all, stop editing! */:

define('WP_MEMORY_LIMIT', '256M');

If none of this works, or if you’re uncomfortable touching server files, this is a good time to bring in a professional. A developer can diagnose the exact cause in minutes and restore your site without data loss.

πŸ‘‰ Need help fast? Fix WordPress bugs with a professional


2. Error Establishing a Database Connection

This error means WordPress can’t talk to your MySQL database β€” the place where all your posts, pages, settings, and user data are stored.

What Causes It

  • Wrong database credentials in wp-config.php
  • Your database server is down (a hosting issue)
  • The database itself is corrupted
  • Your hosting account ran out of resources

What You Can Try

Check with your host first. Log into your hosting control panel and see if your MySQL databases are listed and accessible. Sometimes hosting providers have temporary outages that resolve on their own.

Verify your credentials. Open wp-config.php (accessible via your hosting file manager) and look for these lines:

php

define('DB_NAME', 'your_database_name');
define('DB_USER', 'your_username');
define('DB_PASSWORD', 'your_password');
define('DB_HOST', 'localhost');

Make sure these match what’s shown in your hosting control panel under MySQL databases. Even one wrong character will break the connection.

Try repairing your database. Add this line to wp-config.php temporarily:

php

define('WP_ALLOW_REPAIR', true);

Then visit yourdomain.com/wp-admin/maint/repair.php. Remove that line after the repair is done.

If the database is severely corrupted, you’ll need a backup restore β€” which is why having regular automated backups is so important.


3. WordPress Is Stuck in Maintenance Mode

You see a message like “Briefly unavailable for scheduled maintenance. Check back in a minute.” β€” but it’s been hours.

What Causes It

During updates, WordPress creates a .maintenance file in your root directory. If the update fails or gets interrupted, that file stays there indefinitely and keeps showing the maintenance message to all visitors.

The Fix

Connect to your site via FTP or your hosting file manager. In the root directory of your WordPress installation (the same folder as wp-config.php), look for a file called .maintenance and delete it. That’s it. Your site will come back immediately.

Note: Some file managers hide files that start with a dot. Look for a “show hidden files” option if you can’t find it.


4. You’re Locked Out of WordPress Admin

You forgot your password, your account was deleted, or you’re getting a “Too many failed login attempts” block.

Reset Your Password Without Email

If password reset emails aren’t arriving, you can reset directly from your database:

  1. Open phpMyAdmin in your hosting control panel
  2. Select your WordPress database
  3. Open the wp_users table
  4. Click Edit next to your user
  5. In the user_pass field, select MD5 from the function dropdown and enter a new password
  6. Save the changes

Add a New Admin User via Database

In phpMyAdmin, run the following SQL (replace the values with your own):

sql

INSERT INTO wp_users (user_login, user_pass, user_email, user_registered, user_status)
VALUES ('newadmin', MD5('yourpassword'), 'your@email.com', NOW(), '0');

INSERT INTO wp_usermeta (user_id, meta_key, meta_value)
VALUES (LAST_INSERT_ID(), 'wp_capabilities', 'a:1:{s:13:"administrator";b:1;}');

If this feels too technical, a developer can get you back in within minutes.

πŸ‘‰ Get your WordPress site fixed by a professional


5. WordPress Is Running Slow

A slow website doesn’t just frustrate visitors β€” it directly hurts your Google rankings. Page speed is a confirmed ranking factor, and studies consistently show that most users abandon a page that takes more than 3 seconds to load.

Common Causes of a Slow WordPress Site

  • Too many plugins β€” especially poorly coded ones
  • Unoptimized images β€” the #1 cause for most small business websites
  • No caching β€” WordPress rebuilds every page from scratch on each visit by default
  • Cheap shared hosting β€” your server simply can’t keep up
  • Bloated themes β€” page builder themes like Divi or Avada load enormous amounts of CSS and JS
  • No CDN β€” visitors far from your server get slow load times

What You Can Do

Run a free speed test at PageSpeed Insights and GTmetrix. These tools show you exactly what’s slowing your site down and score your Core Web Vitals β€” Google’s official speed metrics.

Install a caching plugin. WP Super Cache or W3 Total Cache (free) can dramatically reduce load times with minimal configuration. WP Rocket is the gold standard paid option.

Compress your images before uploading. Use tools like Squoosh or ShortPixel to reduce file sizes without visible quality loss. A 4MB product photo serves no purpose on a website.

Remove plugins you don’t use. Every active plugin adds overhead, even in the background.

For serious performance improvements β€” especially if you need to pass Core Web Vitals for SEO β€” optimization goes deeper than plugin settings. It involves server configuration, code minification, lazy loading, render-blocking resource elimination, and more.

πŸ‘‰ Professional WordPress speed optimization


6. Your WordPress Site Was Hacked

Signs of a hacked site include:

  • Visitors being redirected to spam sites
  • Google showing a “This site may be hacked” warning in search results
  • Strange new admin users appearing
  • Your host suspending your account for malware
  • Spam pages indexed by Google that you never created

Immediate Steps

1. Take your site offline temporarily (via your host) to stop visitors from being affected.

2. Change all passwords immediately:

  • WordPress admin
  • Hosting control panel
  • FTP/SFTP
  • Database
  • Email associated with the account

3. Scan for malware. Wordfence Security (free plugin) can scan your files for known malware signatures. Sucuri also offers free online scanning at sitecheck.sucuri.net.

4. Remove suspicious users. Check WordPress β€Ί Users for any admin accounts you didn’t create and delete them.

5. Restore from a clean backup if you have one predating the infection.

Cleaning a hacked site properly is not a beginner task. If malware is deeply embedded, removing only visible symptoms won’t solve the problem β€” the hackers often plant multiple backdoors. A professional cleanup ensures the site is fully sanitized and that vulnerabilities are closed so it doesn’t happen again.

How to Prevent Future Hacks

  • Keep WordPress, themes, and plugins updated at all times
  • Use a security plugin (Wordfence, Solid Security)
  • Use strong, unique passwords
  • Enable two-factor authentication on your admin account
  • Remove plugins and themes you don’t use
  • Choose a hosting provider that scans for malware

πŸ‘‰ WordPress maintenance that keeps your site secure


7. Plugins Are Breaking Your Site

Plugins are the most common source of WordPress problems. A poorly coded plugin, a conflict between two plugins, or a plugin that hasn’t been updated in years can break layouts, cause errors, or take your whole site down.

Signs of a Plugin Conflict

  • Problems started right after installing or updating a plugin
  • You see PHP errors mentioning a specific plugin’s file path
  • Certain pages or features stopped working

How to Find the Problem Plugin

  1. Go to Plugins β€Ί Installed Plugins in your WordPress admin
  2. Deactivate all plugins at once (use the bulk action checkbox)
  3. Check if the problem is resolved
  4. Reactivate plugins one by one, checking after each one
  5. The last plugin you activated when the problem returns is the culprit

If you can’t access your admin, deactivate via FTP by renaming the wp-content/plugins/ folder as described in the White Screen section above.

Choosing Better Plugins

Before installing any plugin, check:

  • When it was last updated (avoid anything not updated in 12+ months)
  • How many active installations it has (more = more tested)
  • Its rating and reviews
  • Whether the developer responds to support questions

Fewer, well-maintained plugins beat a collection of abandoned ones every time.


8. WordPress Update Went Wrong

You clicked “Update” and now something is broken. This happens more often than it should, and it’s one of the strongest arguments for having a backup before every update.

If You Have a Backup

Restore it. Most hosts offer one-click restore from their control panel. This gets you back to the pre-update state immediately.

If You Don’t Have a Backup

This is a harder situation, but not hopeless:

  • If a plugin update broke things: Deactivate that plugin. If you need its functionality, look for an alternative or wait for a fixed version.
  • If a theme update broke things: Switch to a default theme temporarily (via Appearance β€Ί Themes, or via FTP).
  • If the WordPress core update broke things: You may need to manually re-upload the WordPress core files. Download the latest version from wordpress.org and use FTP to overwrite the wp-admin/ and wp-includes/ folders (don’t touch wp-content/).

How to Update Safely in the Future

  • Always back up first β€” your host may offer this, or use a plugin like UpdraftPlus
  • Test updates on a staging environment (a private copy of your site) before applying to the live site
  • Update plugins one at a time, not all at once

A managed WordPress maintenance plan takes care of all of this for you β€” updates are applied carefully, backups are taken beforehand, and any breakage is fixed immediately.

πŸ‘‰ WordPress maintenance with safe updates included


9. 404 Errors and Broken Pages

Your pages exist in WordPress but return a “404 Not Found” error when visited. Or links throughout your site are broken.

This solves the majority of 404 issues on WordPress:

  1. Go to Settings β€Ί Permalinks in your WordPress admin
  2. Don’t change anything β€” just click Save Changes

This flushes WordPress’s rewrite rules and usually fixes broken URLs immediately.

If That Doesn’t Work

The problem may be in your .htaccess file (for Apache servers) or your Nginx configuration. A corrupted or missing .htaccess will break all URLs.

Check that your .htaccess file (in the root WordPress directory) contains at least:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

If links were recently changed (e.g., you migrated to a new domain, changed your permalink structure, or moved pages), you may also need 301 redirects to preserve SEO value and prevent broken bookmarks.


10. Images Not Showing Up

Broken image icons or missing photos on your WordPress site are usually caused by one of these:

File permissions. Your wp-content/uploads/ folder needs specific permissions to be publicly readable. The standard setting is 755 for folders and 644 for files. You can change this via FTP or your hosting file manager.

Files were deleted or not uploaded. If you restored from a partial backup or migrated your site, image files may have been left behind. Your database knows about them, but the files aren’t there.

Wrong URL in the database. After a domain change or migration, image URLs stored in the database may still point to the old domain. A plugin like Better Search Replace can update all URLs at once.

Mixed content (HTTP/HTTPS). If your site recently moved to HTTPS but some images are still loaded over HTTP, browsers will block them. The same Better Search Replace approach fixes this.


11. WordPress Emails Not Being Delivered

Password reset emails, contact form notifications, and WooCommerce order emails all fail silently β€” users never receive them.

Why This Happens

By default, WordPress sends email using PHP’s mail() function. Most hosting providers restrict or block this because it’s a common spam vector. The emails are “sent” from WordPress’s perspective, but your hosting server quietly drops them.

The Fix: Use SMTP

SMTP (Simple Mail Transfer Protocol) routes your emails through a dedicated mail server with proper authentication. This is how email is supposed to work.

Steps:

  1. Install a plugin like WP Mail SMTP (free version works well)
  2. Create a free account with a transactional email service: Brevo (formerly Sendinblue), Mailgun, or SendGrid all offer free tiers
  3. Connect the plugin to your chosen service using an API key
  4. Send a test email from the plugin to confirm delivery

This also improves deliverability β€” your emails are less likely to land in spam.


12. When to Call a Professional

Some WordPress problems are genuinely DIY-friendly with the right guide. Others are not β€” either because they require server access, database knowledge, or because the cost of getting it wrong (data loss, extended downtime, unresolved security breach) is too high.

Call a professional when:

  • Your site has been down for more than an hour and you can’t identify the cause
  • You’ve been hacked and don’t know the full extent of the damage
  • You need to migrate to a new host or domain without losing SEO rankings
  • Updates or customizations keep breaking things repeatedly
  • Your site is failing Core Web Vitals and it’s hurting your Google traffic
  • You’ve outgrown WordPress and are considering a faster, more scalable platform

What a Professional WordPress Developer Can Do for You

A good WordPress developer isn’t just someone who fixes things when they break. They set up systems that prevent breakage β€” proper backups, update workflows, security hardening, and performance monitoring.

Here’s what professional WordPress support looks like in practice:

Fix WordPress Bugs β€” One-time fixes for specific errors, broken layouts, white screens, plugin conflicts, and anything else that’s currently preventing your site from working.

WordPress Maintenance β€” Ongoing monthly care: updates, backups, security monitoring, and uptime checks. You stop worrying about your website, and instead focus on running your business.

Speed Optimization β€” Core Web Vitals improvements, image optimization, caching, and server-level performance tuning to help your site rank higher and convert better.

WordPress to Next.js Migration β€” If your WordPress site has become too slow, too brittle, or too expensive to maintain, migrating to a modern Next.js frontend can solve all three problems at once β€” with WordPress staying on as a headless CMS backend.

Figma to Next.js β€” Got a new design ready? Get it built into a fast, production-ready website without the overhead of WordPress at all.

SEO Optimization β€” Technical SEO improvements: schema markup, Core Web Vitals, crawlability, and structured data that helps search engines understand and rank your content.


The Smartest Thing You Can Do Right Now

Most of the problems in this guide are preventable. The sites that go down, get hacked, or lose Google rankings are almost always the ones that were left unattended β€” no updates, no backups, no monitoring.

The fix isn’t complex. It’s consistency.

If maintaining your own WordPress site feels like a second job, it’s worth outsourcing it. A monthly maintenance plan from a professional costs far less than an emergency cleanup after a hack β€” or the lost revenue from a site that’s been down for two days.

Ready to stop firefighting your website?

πŸ‘‰ See all WordPress services at lihenko.com.ua


Vlad Lykhenko / Web Developer β€” lihenko.com.ua

Posted in: guides

Related Posts

How to Fix WordPress: The Complete Guide for Website Owners | WordPress & Next.js Expert