On this page, you’ll learn all you need to know about troubleshooting and maintaining a WordPress blog or site. At the end of the page you can find a list of resources, focusing on specific troubleshooting and maintaining tasks to help you solve the most common WordPress issues. If you’re looking for something in specific, try the search box to the right to discover relevant topics.
Maintaining WordPress Site
WordPress sites are generally easy to maintain, as almost all tasks are automated or carried out via the user-friendly interface, keeping you away from coding. However, there’re still some manual actions you have to perform regularly or in relation to specific events in order to keep your site up and running.
One of the most important maintenance tasks is to update and/or upgrade your installation regularly. This means updating/upgrading the following: WordPress, all of the installed themes, and all of the installed plugins. Updating regularly helps solve security issues and improve performance.
The new versions of WordPress attempt to automate updates. This means that you don’t need to do anything yourself, as long as the process was successful. If it wasn’t, you’ll get a notification by mail, as well as a message on your Updates dashboard. You can then retry by clicking on the available Update button. Occasionally, this won’t work due to an error or system limitation (such as PHP time, memory, or file upload limitation, for example). In such cases, you might need to update manually. Follow the steps below to safely update WordPress:
- Download the .zip WordPress file and unzip it.
- Back up your site!
- Disable all plugins from within WordPress
- Access your files via FTP (follow the instructions in this post on installing WordPress on a server).
- Navigate to Public_html
- Find and delete the whole wp-admin and wp-includes folders
- Find the same folders in the unzipped WordPress folder on your hard drive
- Upload them to the same directory, in which the old folders resided.
- Upload the wp-content folder to the same directory and overwrite the existing wp-content folder. Do not delete the original as this will delete your site’s content and settings!
- Select all of the remaining files from the unzipped WordPress folder. Upload them to your root directory and choose to overwrite the existing files with the same name.
- Go back to your site (you might need to log in again) and enable all plugins.
- Check your site for errors or signs of incompatibility. If everything seems fine, you’re done. If you notice issues, you have to do some troubleshooting (check out the relevant section below).
When it comes to WordPress themes, they are two kinds: such that can be updated directly from the Update dashboard in WordPress and such that must be updates via FTP. The first category are usually themes, found in the WordPress directory. For the most part, they are free to use. You get update notifications for such themes and can maintain them by clicking on Dashboard->Updates in your Admin panel and choosing to update the relevant theme.
Themes, falling under the second category, are custom or premium, downloaded from diverse marketplaces or developer websites. They can be too heavy to upload via the dashboard and should therefore be installed via a FTP client. When such a theme needs to be updated or upgraded, it’s again done via FTP. Usually, you won’t get notifications for pending custom theme updates on your Updates dashboard.
In WordPress, you can update almost all plugins with a single click from the Plugins page. When you click on Plugins->Installed Plugins in the Admin menu to the left of the screen, you end up on the Plugins page, where you can see a full list of all installed plugins, both activated and deactivated.
Normally, if a plugin needs to be updated, you see a message in red, notifying you that a newer version is available and whether it’s compatible with your WordPress version. A simple Update link on the same line makes it easy and fast to update. The only exceptions are some premium plugins, installed using FTP. In most cases, you’ll have to keep an eye on the website, you downloaded the plugin from, for available updates and update them manually via FTP.
Important When Updating
It’s recommended that you back up your WordPress site before performing a major update or upgrade, no matter whether it’s WordPress itself, your active theme or some of your active plugins that needs maintenance. The reason is that things sometimes go wrong, either because the process created an error, the new files were corrupted, or are incompatible with the rest of your website.
Having a backup in place will help you get your site up and running again in no time, while you try to figure out what went wrong. This is especially important for business or high-traffic sites.
Alternatively, you might consider to clone your site, using a plugin as Duplicator, in order to keep it live while performing maintenance tasks. This way you can make sure that no users experience downtime.
Last but not least, you must inspect your site for issues after updating or upgrading. This includes an inspection of graphics, functionality, and performance. If you notice that something is a bit off, as for example a bit slower page speed, improperly functioning widgets, or awkward colors on your pages, you’ll need to act immediately. Those are signs of unexpected error or incompatibility. Learn how to troubleshoot such errors from the troubleshooting section on this page.
Another important maintenance task is to check your site for broken links. They can be a result of deleted pages or attachments, changed URLs or failing to implement a 301 redirect for permanently moved resources. Broken links affect user experience and SEO negatively, as they result in unavailable pages or attachments and crawling errors.
You have to regularly perform a check for broken links in order to keep your website healthy. You can do this easily by keeping an eye on the Crawl errors tab in Google Search Console, if your site is verified there.
However, Search Console tends to be a bit unreliable and often shows data that isn’t up to date or is incorrect (as for example Google following old sitemap links to deleted pages and reporting them as broken links). Therefore, it might be a good idea to back yourself up and use an additional tool, as the free Broken Link Checker. You’ll get an overview of broken internal and external links, including a link to the pages, on which the broken links were found.
Make sure to fix all broken links but be aware that a part of the errors might be a result of temporary unavailability of external web resources, meaning that no action on your part is needed, unless the error persists.
Even though with shared hosting, which most of WPBN’s visitors use, you don’t really have control over the performance of the server, it’s still a very good idea to keep an eye on its stats. You can monitor server performance in Google Search Console in the tab Crawl errors. Click on the Server connectivity tab to uncover eventual issues during the past 90 days. If a lot of server errors occur, you should contact your hosting provider and discuss possible solutions. Keep in mind that server connectivity issues prevent site users from accessing your pages. This is why you should consider to switch hosting provider, if no solution to the performance issues is agreed on.
Additionally, you should monitor the speed of the server (server response time). Server response time is the time it takes your server to react on requests. While unoptimized websites can slow down response times, the biggest part of the problem resides on the server itself. Too crowded servers or such that aren’t properly set up can lead to response times way higher that Google’s recommendation of 0.200s. In fact, with most hosting providers I’ve experienced response times of 2.5s, regardless whether using shared hosting or VPS.
You can check the response time of your server by running Google’s Page Speed Insights and checking the value for server response time. In my experience, you won’t achieve anything by contacting your hosting provider regarding this issue. They tend to answer that this is the expected response time for a website like yours. If you really want to do something about it, consider hosting your website on a private server or using a CDN. CDNs, even the free CloudFlare, reduce server response times drastically and offer high performance worldwide.
Your sitemap is important, as it helps search engines discover all pages on your site, even when they aren’t connected to other internal or external resources. Web crawlers discover pages by following links, meaning that a new page with none or almost none incoming links will be difficult to reach. This is why sitemaps are a helpful tool, making sure that search engines have a link to all of your pages.
As sitemaps often are generated by plugins, it’s important to always test them before publishing them for the first time and then keeping an eye on occurring errors. You can do both in Search Console, in the Sitemaps tab.
Errors can occur in connection to – but not only – plugin incompatibility or plugin malfunction, especially after updating or installing new theme or plugins.
Monitor And Maintain
Website maintenance requires that you continuously monitor general performance and keep an eye on malware warnings, page speed, optimization suggestions, accessibility, and site use. You can use whatever monitoring tools you prefer, as long as you get all the key data necessary for supervision and inspection of the website.
If you don’t know what to use, here’s a suggestion: monitor for malware by checking Google Search Console’s Security Issues. Even though not all threats get discovered right away, you can use this tool as a part of your regular malware checks. There you can also find information about eventual crawl errors or resources disallowed by robots.txt.
Last but not least, you can use Google Analytics (or your preferred analytics software) to uncover eventual issues by following stats as bounce rate or user behavior on-site. Sudden spikes in bounce rate can, for example, signal an issue with your website or a single page.
You might have seen that there’re plugins being advertised for their ability to clean your WordPress installation for everything from blog post revisions to orphaned comments. The idea is that such files could make your site heavier or full of errors. But is this a real issue?
WordPress sites are actually pretty good at removing unnecessary content, such as post revisions. The rest of the files that usually are targeted by cleaning plugins. such as comments, spam, trackbacks, pingbacks, and similar aren’t that big an issue either. As long as you maintain your website regularly, checking for broken links, spam or malfunctions, you won’t have a problem with them piling up.
It is not recommended to use a plugin to do the job. You risk to lose important files or get something deleted by mistake because it was misread by the plugin. Additionally, you risk to crash your whole site or experience plugin incompatibility.
Instead, put site maintenance on your schedule and make sure that:
- No unused subdirectory installations slow down your site. This is very important. Sometimes you might create a subdirectory installation with, for example, a survey or landing page. Once you don’t need it any more, you might feel enticed to just delete the page and forget about it. However, you must not do that. If you don’t uninstall the script, you risk that it’ll result in errors and additional lookups slowing down your whole site.
- No unnecessary drafts clog your site. Drafts are nice to scribble ideas for future posts but if you are one of those who end up with hundreds of drafted – and never taken up – ideas, you’ll be better off using pen and paper than limited web resources.
- No spam comments, pingbacks and trackbacks devalue your pages. Spam can sometimes be dangerous for site visitors but it is always bad for SEO. Make sure no spam is tolerated on your website. It’s a good practice to always moderate comments and disallow pingbacks and trackbacks on your pages. You can disallow them by clicking on Settings->Discussion in the Admin panel and then unchecking Default article settings->Allow link notifications from other blogs (pingbacks and trackbacks) on new articles. This is important because it’s an easy way to bypass comment moderation and still post a spam link with custom anchor text. For further spam protection of your site, check out this post on how to keep WordPress spam-free.
- No unused images clog your media library. Images can be very heavy and can slow down your whole site. Check therefore regularly your media library for unused files and remove them.
- No inactive WordPress themes or plugins use your resources. It’s very convenient that you can activate and deactivate plugins without losing your settings. However, it can become a real burden to your server to store tons of inactive themes or plugins. Make sure you keep your WordPress setup as clean and lean as possible to avoid slowdowns.
Keeping locally a current backup of your site and your whole Home directory from the server is crucial to website maintenance. It’s recommended that you backup your site once a week or once a month, if it’s in constant development (as blogs usually are), or at the very least in connection to major maintenance events as installations, updates, upgrades or significant content changes.
Backups should be in a format, allowing you to restore your whole setup (the whole Home directory) and the wp-content folder manually, by uploading the files via FTP. Additionally, you can make use of the backup wizards available in most server control panels and create partial backups for one-click restores. Here’s a detailed guide on backing up your WordPress site.
Troubleshooting WordPress Site
When it comes to troubleshooting, WordPress is a breeze. There’re a few tricks you have to learn – and this tends to become necessary pretty early in your blogging career – and you simply know how to fix your site the next time something goes wrong.
Here’re the scariest and most common issues – and how to solve them.
Internal Server Error
Internal server error is one of the first issues you get to deal with when managing a WordPress site. As a beginner, you might get mislead by the term “server error” and believe that something is wrong with your server (maybe it’s down?). However, this error occurs most often as a result of misconfiguration of the site and in relation to an event as core file tweaks, new installation (of a theme or plugin), update or upgrade.
The most annoying thing about internal server errors is that you can’t access neither the frontend, nor the backend of your site. Thus, you cannot undo whatever action prompted the error.
The only way you can access your files is via FTP or File Manager on the server. No matter which way you do it, you have to find the theme or plugin, which you believe causes the problem, and rename their folder. You can rename it to whatever makes sense to you, for example PluginName_possibly_bad. Renaming the folder will disconnect it from your WordPress site.
Once the plugin isn’t active any more, try to access your site again. If you can access it, this means that you have found the problem. Do not activate this plugin again before (if possible) figuring out what went wrong!
If it was your active theme causing the issue, no worries, WordPress has fallback themes for such situations (this is why you shouldn’t delete the default themes WordPress comes with!).
Here you can find the detailed guide to resolving Internal server errors.
If you experience that you’re locked out of your WordPress site, even though there doesn’t seem to be anything wrong with the installation (you can access the frontend and it works as it should, the reasons might be many: you forgot your password, your site got hacked and your credentials got stolen, or you changed your password by mistake without realizing it.
Luckily, there’re ways to reset your password without accessing the Admin panel in WordPress.
If you just forgot your password or changed it by mistake, you can reset it via the Forgot your password feature on the Login screen. An email with your password will then be sent to the email, associated with your account. You can then log in and reset the password from within your Account page to make sure that you have the correct password.
If your credentials got stolen, it’s likely that you can’t use the method described above. You can try the two methods described in this post on resetting your password, as long as your user hasn’t been deleted.
If these methods don’t work either, you can still regain control over your site by using a saved backup. I recommend to simply delete the whole content of your Public_html directory on the server and upload its backup version via FTP. This way you’ll make sure that no malicious files are planted there.
Additionally, you must log in and change all of your login credentials, preferably create a new Admin user and delete the old one. Use whole new email address, user name, and password.
Last but not least, contact your hosting provider and inform them about the hacker attack. Ask them to check the server for malicious content or abusive actions. If deemed necessary, ask them to completely recreate your partition of the disc to make sure there’re absolutely no hooks that will make it possible for attackers to regain access.
In WordPress, actions as uploads and scripts’ resource usage are defined on server level. This means that you can only upload files up to XX MB or run scripts that use up to XX MB and take XX sec. to complete. These settings are individual for each server, meaning that they differ from host to host and from website to website.
These limitations are set to avoid server abuse. Therefore, they shouldn’t be removed completely to avoid a system crash. However, you can in most cases change them to fit your reasonable needs. A prerequisite is that mod_rewrite is enabled on the server.
In such case, you can change the values for PHP memory, PHP upload size, and PHP execution time to custom values. Here you can find detailed description of changing the PHP memory limit and other PHP values.
If mod_rewrite isn’t enabled on the server, you have to contact your hosting provider and either ask them to enable it, or to make the necessary changes of the PHP values.
Plugin incompatibility is one of the most common errors in WordPress. It’s most often observed on sites with many plugins or such that frequently switch themes. However, plugin incompatibility occurs also in connection to simple maintenance tasks as updating.
The annoying thing about this kind of error is that it doesn’t prompt one simple to recognize warning sign. Instead, it causes different errors that can range from subtle to a complete site crash.
Some of the most common signs of plugin incompatibility are: slow loading of both front- and backend, occasional crashes that get fixed when refreshing, screwed formatting of some page elements or the described above Internal Server Error.
Sometimes, you can notice the issue right away, while in other cases it might take time to figure out that something is wrong. No matter which is the case, try to retrace your steps: Have you installed something new recently? What have you updated? Be aware that updates can make plugins and themes that used to play nicely together incompatible.
There’re different ways to resolve plugin incompatibility. As long as you can access your Admin panel, click on Plugins->Installed Plugins and disable all of your active plugins. Check whether the issue is resolved. If yes, it means that one of your plugins is causing problems. If not, it’s your theme that is the issue.
If your theme is the problem, you must either go back to a previous version or switch themes. If a plugin causes incompatibility, you must identify it by activating plugins one-by-one and checking which one causes the observed issues.
If you want to learn more about how to handle the situation or what to do when you can’t access your Admin panel, here’s a comprehensive guide on dealing with plugin incompatibility.
Unable To Change Anything
Some WordPress users experience, especially in the beginning of their blogging career, that, no matter whatever changes they make in the backend, their edits don’t get published.
The reasons can be two: one of the WordPress limitations, described above, has affected the process or – most often – you’re seeing a cashed version of your site.
The caching issue happens often when WordPress users don’t configure caching correctly or use preconfigured caching options. Cache should be configured to show not cached versions of the website to logged in users. If this is not the case, you’ll need to clear the site’s cache, your browser’s cache, and, in rare cases, also the server’s cache before you get to see the changes that you’re trying to publish.
In order to configure caching properly, use a compatible cache plugin or, even better, configure the cache yourself. In this post on page speed optimization you can find instructions on configuring the cache correctly, without a plugin.
Your Site Got Deleted Or Altered
It can happen that your site gets deleted or altered, either by mistake or as a result of an attack. In such cases, you can perform partial or full backup-restoration, as described in the backup section above.
Using a full backup is recommended in cases where your whole site got deleted or altered as a result of a hacker attack. As long as the deletion or alteration was caused by a simple mistake, you can use partial backups to restore the missing or corrupted data.
If you have regular site backups as a part of your hosting plan (often paid service but sometimes available for free in emergencies), you can simply contact your hosting provider and ask them to restore your site from the most recent backup.
Additionally, as long as you have suspicion that a hacker attack has occurred, ask your hosting provider to check the server for viruses or unusual activity. Remember to change your user credentials to make sure that your site is secure again.
If you stumble upon another issue or simply don’t know how to deal with certain maintenance or troubleshooting task, WPBloggingNerd can help. Don’t hesitate to get in touch or ask for help, it’s free, fast, and there’re almost no limitations for what you can get help with.
Additionally, if you want to be able to handle all kinds of WordPress maintenance and troubleshooting tasks, take a look at the bottom of the page and subscribe to WPBloggingNerd’s newsletter or follow us on social media for important WordPress updates, tips, and tricks.