WordPress Troubleshooting Guide: What is Breaking Your Site?

By July 24, 2019 Articles

WordPress Troubleshooting Guide

When you go online, and find your website is down or is showing an error, this WordPress troubleshooting guide will show you several things that you can do to gain access to your site and get things up and running again –

I CAN Access My WordPress Admin

Sometimes, even when your site won’t load, you can still access your WordPress admin. Here are our WordPress Troubleshooting Guide steps to help you troubleshoot issues from the WordPress admin area.

  1. Before following any steps found in this WordPress Troubleshooting Guide BACKUP YOUR WEBSITE!! Always before making changes especially as part of the troubleshooting process, keep a current backup of your site just in case anything goes wrong!
  2. Look for Error Messages: If there is a clear error message that names a particular plugin or points to the theme, then the first thing to do is to is disable that plugin or theme and check the issue again. Usually it is not this straight forward, but if you are lucky and have a clear error message that directs you straight to the problem this will make figuring it out much simpler.
  3. Check for Updates: if there are any updates that need to be done, do those first – often, an out of date plugin, theme, or core update will solve the problem. Check to make sure that your server side software (ie. PHP) is also up to date, as more current versions of WordPress and plugins may not work with outdated versions of PHP.
    • Check your WordPress Version: Make sure that your WordPress is updated to the latest version. If you have plugins that are incompatible with the newest version of WordPress, you may want to make sure that those can be updated, or remove them from your WordPress install and/or find other plugins to replace them.
    • Check Your Plugins: Update any plugins that may be out of date. If you have any premium plugins that do not have active licenses, you may need to check with the plugin developer to see if there is a new version available and then renew the license so that you can update the plugin.
    • Check Your Theme: Make sure that your active WordPress theme is up to date and has not been abandoned. You can check in your theme details to see what the date of the last update was. If you are using a premium theme that is not activated you may not be seeing updates when they are available. Check with the theme developer to see if there is a new version. If there is, you can update it manually via FTP by logging in through FTP, navigating to the themes folder, unzip the new theme, delete you theme folder from the server, and then replace the deleted theme folder with its files with the new unzipped theme folder. Once you have completed this, you should be able to go into your WordPress admin, and then to the themes admin, and check your active theme. The version should now be updated to the newest version of your theme. If the issue does not return after update the theme, then the problem should be resolved, if not, continue troubleshooting.
    • Check Your Server Settings: if a plugin can’t be updated and you are running a version of PHP on your hosting account that is older than PHP 7, the new version of the plugin may not be compatible with the older PHP version. You can install a plugin called “Display PHP Version” that will show your current PHP version on the ‘at a glance’ widget in your WordPress admin dashboard. If you have an older version of PHP, you will need to check with your web hosting support to see how that can be updated. You should also run a PHP compatibility check to make sure that there are no older plugins that will not work with the newer version of PHP – the ‘PHP Compatibility Checker’ plugin will help you check your site for compatibility issues with the new version of PHP.
  4. Check for Abandoned Plugins: Check and see if any of your plugins are abandoned – meaning they have not had any updates made in a year or longer. If there are any old plugins that are showing the last update was made over a year ago, disable them and check to see if the problem persists. If it goes away, one of these outdated plugins is the problem. You can re-enable them one at a time and check to see if the problem returns, or (I strongly advise) you can remove them completely and find other plugins that have the same functions that are currently being maintained by the developer.
  5. Check for Plugin Conflicts: Because WordPress is open source, every developer has their own coding style and Sometimes plugins can be coded in a way that may conflict with other plugins or even with your WordPress theme.
    • Divide and Conquer! – Disable half of your site plugins and check for the issue. If the issue is gone, one of the plugins in the batch you disabled is the culprit. Re-enable half of that batch of plugins and check again. If the problem returns, disable half of those plugins again and re-enable the plugins that you have ruled out. If the problem does not return on re-activating this batch of plugins, move on to the second half of the disabled plugins and re-activate half of them. By disabling and re-enabling your plugins in a systematic way, this will help you identify which plugins are having the problem.
  6. Check for Theme Conflicts: Similarly, every theme is coded according to the developer’s style, and an active theme can sometimes be in conflict with one or more installed plugins. To check for theme compatibility issues, activate a default WordPress theme such as 2017 or 2019. If the problem no longer exists, you will need to decide if you want to replace you theme or work with the theme developer to resolve the issue.
  7. Check for Errors in the JavaScript Console: Most of the more popular web browsers have developer tools, one of which is usually a JavaScript console where you can check for errors. for example, in the Chrome browser, if you right click on your web page and select ‘inspect’ from the drop down menu that appears, you can see a console, which will show any errors on that site in red type. These errors can give you an idea of what might be happening on your website.
  8. Run a Malware Check: If you have gone through all of these steps, running a malware scan on your site could give you additional information that will help you find the problem – Installing and running a scan using the WordFence plugin can let you know if there is a hack on your site which could be causing errors. If malware is found, see the section on hacked sites below.

I CAN’T Access My WordPress Admin

If you can’t access your WordPress admin area, even if the site seems to be loading fine, here are our WordPress troubleshooting guide steps that you can take to hopefully get you back into the admin of your site so that you can resolve the issue:

  1. Before following any steps found in this WordPress Troubleshooting Guide BACKUP YOUR WEBSITE!! Always before making changes especially as part of the troubleshooting process, keep a current backup of your site just in case anything goes wrong!
  2. Check Your Email: In WordPress 5.2 a new feature was added that emails the site administrator with a link to access WordPress recovery mode. If you can get in this way, you should be able to continue troubleshooting using the steps above for if you are able to access your WordPress Admin. If you cannot access your site through recovery mode, continue to step 2.
  3. Check for .maintenance File: Log in via FTP and check the site’s root directory for a file called .maintenance. This is a step that you will want to take especially if you were running an update right before the issue occurred. When you run updates, WordPress automatically generates this file so that the site will show as being temporarily down for maintenance. It is supposed to remove the file once the update has completed, but sometimes on some hosting environments, this doesn’t always happen as it should.
  4. Check for Plugin Conflicts via FTP: To check for plugin conflicts through FTP, you will need to access your site through FTP, or through your hosting file manager if that is available to you. You can rename the WordPress plugins folder located in the wp-content folder in the root of your WordPress installation. If after doing this you can now log in and access the WordPress admin area, after the site loads it will automatically deactivate all of the plugins that were in your plugins folder. At this point, you should be able to go back in to your wp-content folder and rename the plugins folder back to ‘plugins.’Once this is done, then you should be able to continue using the troubleshooting steps outlined in the section above for troubleshooting from your WordPress admin.
  5. Check for Theme Conflicts via FTP: To check for theme issues, rename the themes folder in your wp-content folder in the WordPress installation, and create a new folder called ‘themes’ and copy one of the default themes into that folder. If this allows the site to load, then you will need to continue troubleshooting as outlined in the section above.
  6. Run a Scan: Scan your site by copying and pasting your site url into the Sucuri Site Check and scan your website. Once the scan is complete, you will need to follow the directions given to clean up any problems if any are found. If malware is found, see the section on hacked sites below.

Advanced Troubleshooting

If after running through all of this and there is still a problem, there are still a few things in this WordPress troubleshooting guide that you can try, but you will need access to your hosting account and to FTP. Once you reach this point in troubleshooting a website issue, if you are not comfortable with this depth of troubleshooting you may want to find someone who can help you.

    1. Check Error Logs: If you can get into your web hosting account, there should be an error log that you can check. If you can get an exact error message, it will often name a file or a specific process or even a theme or plugin file that is causing the problem, or even a particular file in your WordPress install. This can happen if a WordPress file gets corrupted during a failed update, or if your site has been hacked or otherwise compromised.
    2. Turn on WordPress Debug: You will need FTP access to do this – you will need to add these lines to your wp-config.php file (See the WordPress Support site for more information):
      define( 'WP_DEBUG', true );
      define( 'WP_DEBUG_LOG', true );
      define( 'WP_DEBUG_DISPLAY', false );

      If you want the error messages to display directly on the website and not in the debug log, then you would set the debug display to true, and not add the line for the debug log. The log will be saved in your WordPress site under ‘wp-content/debug.log’

If Your Site is Hacked

If you complete all of the troubleshooting in this WordPress troubleshooting guide and find that your site is hacked, your best course of action if you are not very experienced with WordPress is to contact a professional. There are a lot of great resources for dealing with hacked sites on sucuri.net This is the point where you will need to make some crucial decisions on whether you will try to do the work yourself, or hire a professional. Some things to consider are:

  1. How Important is the Website?
    • Low Traffic or Personal Sites: If it is a personal site that you don’t care much about, it may not be worth the cost to have it professionally cleaned, but if you plan to keep the site running, the best thing to do would probably be to salvage as much content as you can and rebuild the site from scratch to avoid accidentally keeping a backdoor in your site’s content that would allow the hacker access even after you have cleaned everything up. You would need to replace all of the WordPress files, theme files, and plugins files with new copies after deleting all of the files and database of the hacked site, and you would need to make sure that all of your passwords – your WordPress login, your hosting account, etc, were all updated with strong passwords. The ideal situation would be that you have a clean backup of the site that you can replace your site with – not a backup that was stored on your hosting server, but a backup that was stored in a secure location that the hacker would not have had access to, because often, site backups that are stored on the site’s server may have been corrupted to prevent you from using them.
    • Business Sites: Again, the ideal situation is that you have a clean backup of the site that has not been corrupted by the hack. If the site is critical to the function of your business and having it down equals loss of business, then the best thing to do would be to hire a professional service to clean your site.

An Ounce of Prevention

  1. Regular Updates: The best way to prevent the kinds of problems that this WordPress troubleshooting guide can help you solve is to perform regular maintenance on your WordPress website. Keeping your site up to date is critical even though there are people (even some developers) who might tell you that updating plugins is not that important. Updates are made regularly to plugins and to the WordPress core, often times because of vulnerabilities in the code or because of incompatibility issues – if WordPress makes a change to the code, all active WordPress plugin and theme developers may need to make adjustments to their code to allow their plugins and themes to continue working with the most up to date version of WordPress. Plugins and themes that don’t get updated regularly are more likely to crash if the updates are made when they are severely out of date. If you set up a site and then never make any updates, the likelihood of that site being hacked increases, since hackers are always actively seeking out vulnerabilities in the code that they can exploit. These constantly being found and patched by new updates, so a site that has not been updated in several months even, can be vulnerable to hacks. Many web hosting companies will automatically update the core WordPress files when a new version comes out, and if they do this when there are multiple plugins that are out of date, that can also create a situation where the site will crash due to incompatible plugin code or out of date themes. If you do not have the time to update regularly, you should seriously consider hiring someone or using a service that will keep your site up to date.
  2. Backups: The absolute best protection that you can have for preventing downtime due to failed updates or corrupted files, is a good backup system. If you have a good managed WordPress hosting service, they should provide daily backups, that would allow you to roll your site back in minutes. There are plugins like UpdraftPlus that you can set to create regular backups and have them saved to your google drive or a dropbox account. In the case of a hack, you can have a hacked site for months and not know it, so it is a good idea to check your site regularly for malware and to keep at least one clean backup in a safe place on your computer or in a cloud storage like dropbox, that you can use to replace your site if you find a hack. Otherwise, you may still have a backdoor in the code of your site which would allow the hacker to access your site and reinstall the hack after you have spent all that time and money cleaning your site.
  3. Security: To prevent hacks from happening at all, this WordPress troubleshooting guide suggests three main areas that you will want to look at:
    • WordPress and Hosting Account Passwords – weak passwords or passwords that have been previously compromised are easier to be hacked. Always use strong passwords, and if you can’t remember the passwords, use a password manager like LastPass If your password is a pet name or a favorite place, or any other simple password like a sports team for example, you may well get hacked. Here is a list of the most commonly hacked passwords of 2019 – make sure that your’s is not on it! A password manager will generate a random password for you, and fill it in for you when you log in, so you won’t have to try and memorize it.
    • Secure Usernames – Don’t use ‘admin’ as a username, or have the username be the users same email address that they used to create their account. Also, don’t set the username to be the display name for a user’s account. If a hacker knows the username already, they are halfway to accessing that user’s account. Many times, brute force attacks start by using the username admin, and then running a list of known passwords through a bot, to try to log in and access the account. If you have a user set up as ‘admin’ then all they have to do after that is guess the password!
    •  Malware Protection – Install a WordPress security plugin with a firewall like WordFence or use a hosting company like WPEngine that provides security as part of their hosting plan.
    • Secure Hosting – Cheaper isn’t always better – use a hosting company that has a good reputation for security, and also for customer support in case you ever need to contact your web hosting support due to a hacked site or other problems. The money that you save using $3/mo hosting is quickly lost when you have to start shoveling money onto the fire of a hacked website!  There is nothing worse than trying to get help from your hosting company only to have them tell you they can’t do anything to help you. A lot of cheap hosting companies that offer little security or support have already had their servers hacked, and putting your site there give the hackers instant access to everything including the database.
    • Too Many Site Admins – Keep the number of admins to a minimum – there are different access levels to the WordPress admin, and not everyone who needs to post articles or make simple updates to the site needs full administrative access. The more site admins, the more opportunities for weak passwords.

If you need more help than our WordPress troubleshooting guide can give you for the issues with your WordPress site, WPSlopes would be happy to help. You can sign up for a maintenance plan here, or contact us for a free WordPress consultation.