The steps to troubleshoot and then, if required, restore a broken WordPress website depends on why you need to restore in the first place.
The following tips also apply for any indication of a possible conflict. Buttons not working, editor not working, posts not saving. Anything that isn’t working properly. By going through this process you can eliminate a conflict as the cause. In the majority of cases you’ll discover the cause of the conflict so that you can address it and get things up and running again.
First, some WordPress trouble-shooting…
When WordPress updates, there are no guarantees that all the independently developed themes and plugins that exist will work together without issue. It is not WordPress’ responsibility to ensure it works with everything out there.
It is the developer’s responsibility to makes sure that their products — themes and plugins — free or paid — work with WordPress and are updated as necessary. Not using themes that are kept up to date is one of the reasons why sites break and therefore need to be “restored”.
What are the most likely causes?
- Have you added any custom snippets to any of your PHP files recently?
- Installed any new plugins?
- Switched themes?
- Updated plugins or your website’s theme?
- Your site was hacked.
If you cannot login…
We’re going to have to change some file names to deactivate them so we can at least login and determine what the problem is. Does your hosting have cPanel? Within your cPanel you’ll find your File Manager where you can access and change file names.
- Login to your server’s cPanel File Manager or via FTP.
- Go to the “root” which is generally the public_html directory.
- Drill down to your wp-content directory. There you will find the directory for /plugins.
- Rename that directory (right click > rename) from: plugins to: pluginsOFF. This will deactivate all plugins.
- Try to login again to your WordPress Admin.
- If you can now login you know a plugin is the bad actor. Stay in your dashboard and go back to your cPanel/File Manager or via FTP and reinstate the pluginsOFF back to to plugins. You can now resume the plugin testing below.
- If you still cannot login and the issue persists after deactivating plugins, do the same with your theme’s specific folder by renaming it so that your theme is deactivated and you can login. Once logged in, follow the next steps.
Check WordPress Plugins First
Deactivate all your plugins. Then check your site. If all is well you then know one of the plugins you are using is causing a conflict. In my experience plugins are more the cause of conflicts and breaking sites than themes.
Next, reactivate the remaining plugins one-by-one. Then check your site after reactivating each one to see if the issue is resolved. This is how you determine which plugin is causing the conflict. As soon as things don’t work — its a pretty good chance the last plugin you reactivated is the cause of the conflict.
You want to regularly check that all your plugins are being tested up to the latest version of WordPress. If you see a nag bar like this on the plugin’s page in the WordPress Plugin repository — that is called a clue.
When you see something like the above, time to find a new plugin that is supported and kept up to date by the developer.
Is Your Theme Compatible?
So you’ve checked all your plugins and still your site is broken. How do you know if it is your theme breaking your site? Check with the theme developer to see what version of WordPress the theme is tested up to.
You can verify if it is your theme causing the problem by going to Appearance > Themes > then activate the WordPress default theme (Twenty Twenty). If everything functions properly, you know it is probably your theme choking on the latest version of WordPress. Time for a new theme.
Common Questions: How do I recover?
My theme is not compatible with the latest WordPress version, now what?
Don’t look back — look forward. Immediately contact your theme developer for assistance. If they are unresponsive, no time like the present to get your site on a premium theme where you won’t have to worry about this again.
Load up that new theme and customize it to your liking. I many cases getting a theme compatible with the latest version of WordPress will “restore” your site.
Did you change some theme files and break the site?
Then you need to restore the files you modified to the previous versions. Hopefully you did those changes off-line, not in the Theme Editor of WordPress and you have an original copy to fall back to.
Adding snippets to the functions.php theme is something that while sounding easy, can break your site. This where a WordPress staging site comes in handy.
If you did use the Theme Editor, you should be able to go to a previous backup of the wp-content/themes/your-theme directory and FTP fresh copies of the files you changed up to the server to overwrite your modified versions. This will undo your modifications and restore your site.
Don’t have that backup? (I bet you will moving forward!) Check with your hosting company to see what backups they may be able to restore for you.
It’s not my theme or my plugins? Now what?
It could be you had an incomplete or corrupted update process. If this is the case, you’ll want to restore to your last functional site backup.
Does your database/website need to be restored?
Quality Manage WordPress hosts allow you to create restore points before making any changes or updates. Then restore if necessary. If you are not on a Managed WordPress host; why not?
Check the backup you want to restore and click the Restore button. The next step will be to refresh your permalinks. Go to: Settings > Permalinks and just click Save.
If you don’t have a backup, contact your hosting company. They may have a backup that they can restore. However, don’t be surprised if they whack you with a fee to do so.
Shared cheapo hosting just doesn’t cut it for those serious about their WordPress website success. Not to mention if that server goes down, how do you get at your backups stored there?
Was your site hacked?
Run a security scan. If the scan shows that your site has been infected with malicious code, you probably need to bring in some help to find out the damage caused and what is required.
You can also contact your host to restore to a clean back-up of your site. When sites are hacked, generally speaking you have to “clean” files that have been modified to remove malicious code. Or do a complete restore from a past date pre-infection.
I mark my calendar to review all my plugins every quarter and replace those that are no longer being maintained. Yes, plugins may still work even if they are not up to the latest version of WordPress.
But the longer a plugin is not updated the higher the risk of a conflict. That means a PIA and downtime for you. No need to go through that when it can easily be avoided, right?
I also only use themes that I know keep up with WordPress’ evolution and updates. That is why I gravitate to premium themes and plugins and services as they are more apt to be kept updated and offer the support needed if any issues arise.
AUTOMATIC UPDATE TIP: If you have automatic WordPress updates turned on, (I’m not a fan of auto-updates…) you’ll want to run through your website after you are notified that an update has occurred. Click around, fill out your forms and make sure everything is operating properly.
I prefer manual updates. This way I can backup, update, check my site and address any conflicts right then and there. This avoids my site being online and broken without my knowledge for any length of time.
WordPress Maintenance is Key
Make your life easier and dramatically reduce the opportunity for conflicts to arise by updating promptly — and properly — as needed. Ignoring updates is also a huge security risk. Then, make a point to review that your theme and plugins are tested and compatible with each version of WordPress on a regular basis.
So, as you can see, using quality supported themes, keeping up with WordPress and having a backup process (with restore functionality) in place facilitates your best chance for a hassle-free recovery.
At your service,