If you’re running a website on the self-hosted version of WordPress, you probably know how easy it is to break it.
You might install a plugin that conflicts with another. You might add or remove code that stops your site functioning properly. You might disable a feature you like simply by switching themes.
All of these things and more happen every day. And it’s very frustrating when you have little or no knowledge of the technical side of WordPress.
When something goes wrong you’ll likely google the problem and end up at the WordPress.org forum – a place for people using the self-hosted version of WordPress (ie not WordPress.com) to ask questions and find solutions.
If you can’t find the answer you’re looking for you might create a new account and start a thread to explain what’s gone wrong. The forum’s very active so you might get an answer within a few minutes, and the answer may or may not fix your problem.
On the other hand, you may have to wait a few hours before getting a reply.
All of this adds to your frustration and eats into your time.
Which is why it’s always good to know some of the basic ways to troubleshoot WordPress.
Why is it a good idea to learn how to fix common WordPress problems?
Like anything you use often or rely upon, it makes sense to gain some knowledge of how it works so you don’t have to wait for other people to sort things out for you when something goes wrong.
It’s the same for WordPress.
Yes, it looks complicated and yes it is very technical but it’s also very easy to rule out major problems when the shit hits the fan.
What I’m going to share with you in this article are a few ways to determine what’s wrong with your site and what you can do to fix common issues, without starting a thread in the forum, turning to Google for answers or hiring somebody to help you.
1. Stay calm
I know it’s easy for me say this from the comfort of my little office, but panicking will get you nowhere. You’ll end up stressing yourself out and you won’t be able to think straight.
Keep this in mind – As long as the database remains intact, it’s easy to fix most WordPress problems.
Let’s look at some of the basic solutions you can try before looking for more help.
2. Switch to one of the default themes
(A few years ago I was quite active on the WordPress.org forum. This is a short story about one of the first people I helped.)
This guy bought and installed a simple premium theme, it wasn’t particularly flash or advanced, but it looked nice and suited the vibe of his site.
After installing it he found the comments section on his live pages were missing – nobody could leave a comment (sometimes a good thing) or read the ones already published.
I suggested he switched to one of the default themes.
Hey-presto, the comments reappeared.
The unlikely cause of the problem was the theme.
The theme author disabled the comments part of WordPress, so although the comments remained in the database, nobody could see them on the live site because the function to display them didn’t exist in the theme.
Simple. But you can see why the guy was so worried.
Switching to one of the default themes lets you eliminate the theme as the cause.
3. Disable and enable plugins
WordPress is open source software so programmers use whatever code they need to make a plugin work.
Before switching to a mobile responsive theme many years ago, I had a minor ongoing problem with a conflict between WPTouchPro and Outbound Link Manager.
Both plugins worked and did what they were supposed to do.
But when WPTouchPro was active, the link to the Outbound Link Manager options disappeared from the internal navigation menu, so I couldn’t access it.
It took me a while to work out what was going on, and the way I figured it out was by deactivating and activating plugins until I replicated the error.
I started with the unpopular plugins, the ones I don’t use all the time, and slowly worked my way through to the ones everyone knows.
I deactivated one plugin at a time.
If the link to Outbound Link Manager didn’t reappear, I enabled the plugin again, made a note of it and moved on to the next one.
In this situation, I disabled and enabled almost 30 plugins before finding the culprit (WPTouchPro).
When I disabled it, the link to Outbound Link Manager reappeared.
If you find a problem occurs after installing a new plugin or updating an older one, a plugin is almost certainly causing the problem.
If the problem occurs randomly, it’s a case of disabling all (or some) plugins to see if you can find a solution.
It is frustrating and tedious, especially if you have a lot of plugins, but it’s worth the effort.
When you disable a plugin, almost always, WordPress remembers the settings when it again becomes active. You should always err on the side of caution if the plugin is important and note down any special options or settings.
4. Clear the WordPress cache
WP Super Cache is one of the most popular caching plugins around. It stores HTML versions of your pages on the server and displays them to your readers. It works really well.
Problems may occur when you change something like a CSS file, because when you view the site in a browser, it’s calling the cached page and not the new version.
It’s easily resolved by switching off the plugin (in the case of WP Super Cache, I don’t mean deactivating – I mean temporarily switching it off) and/or clearing the cache.
If you use a CDN (content delivery network), you may have to purge the problem file(s) on its server.
5. Check menu settings and options
Problems with menus usually occur because the settings are not quite right.
If you add a menu item and it doesn’t show, make sure you’ve hit save (it happens!), clear the WordPress or browser cache, then check your settings to make sure you have added the item to the active/correct menu.
Also, check the menu is where you think it is – some themes give you multiple menu options, so you may think it’s Menu A in Position A, when in fact, it’s Menu B in Position A.
Sometimes, not ticking a box or choosing the wrong menu causes the problem, and the solution is so obvious, and you’re so used to looking at the screen, it doesn’t jump out at you.
Go over your settings very carefully.
6. Walk away from your blog
A good trick for diagnosing problems with WordPress (and other software) is to walk away from your screen for a few minutes so you can reset your brain. This works especially well if you’ve spent way too long looking for a solution.
Make a coffee, take the dog for a walk or sit in the garden. When your brain resets, head back to the screen and take another look.
You might notice the problem/solution hits you straight away.
Worth mentioning: Always make a backup of the functions.php file before editing
You can make WordPress do a lot without ever touching code.
However, if you feel the need to dig deeper (it’s the best way to learn) and want to change the functions.php file, always, always make a backup before you start.
Make sure you have an FTP program (like FileZilla, which you can download and use for free) and the login details for your server. If you don’t know them, ask your hosting company for them before you start updating important files.
I can’t tell you how many times I’ve broken my site because of a change I’ve made to the functions.php file.
In my experience, when something goes wrong with this file, simply pasting the code via WordPress isn’t enough. I nearly always have to upload the file via FTP.
Once you’re done editing and you know the site’s working, delete the backup.
If you break your WordPress site, don’t panic. The chances of your content, your images and everything else being where they should be, and the database remaining intact, are high.
It’s just a matter of figuring out what’s wrong and fixing the problem.
Sometimes it’s human error, an incorrectly configured plugin or the theme’s settings.
Whatever it is, before you head over to the forum or google the problem, try some of the ideas suggested in this post, you may find your problem disappears.
If you have any other suggestions, please leave a comment.
If you’re stuck and need a hand, drop me an email and I’ll do my best to help.