It is almost inevitable that at some point during the life of your WordPress website you will experience a major plugin conflict.
When these conflicts occur it’s never really a problem between two minor plugins. You can almost guarantee that the most important plugin on your site will be directly affected, bringing its entire functionality crashing down around you.
That statement is 50% paranoia and 50% reason. The most important plugins you use are brought into conflict with others because of their complexity. Whether your site is run around an events management plugin, an eCommerce plugin, or something else entirely, you can be sure that it will be the primary victim in any conflict that arises.
It’s almost impossible to avoid conflicts entirely if you use a lot of plugins. However, there are a few methods you can use in order to keep plugin conflicts and issues to an absolute minimum.
Avoid Outdated Plugins
If you must use a plugin for a specific feature ensure it has been updated recently and is compatible with the latest version of WordPress.
If the plugin hasn’t been updated by it’s developer in over six months there is a good chance it will contain outdated code. Now that WordPress are trying to shorten their development cycle this becomes even more important.
Backup Plugins In Before You Update Anything
Most people will update their plugins and website without a second thought. You should be running the latest versions of the software on your website, but you shouldn’t be reckless when carrying out these updates.
As with updating the core WordPress software it is good practice to have complete and usable backups of your entire site before you make major changes. Having backups allows you to restore older versions of each plugin should something go wrong and you have to rollback to the previous version.
Create a Local Development Version of Your Site
Use an application such as MAMP or WAMP to create a version of your website on your local computer.
You can then use this local version of your site as a testing environment for updating to each plugin you have installed. This allows you to test the updates of each plugin works without causing any conflicts with the others.
If conflicts do occur then they don’t happen on the live version of your site. You can test and tweak the plugins on the development version until you are happy that everything works.
Then at that point you can upgrade your live version.
Update Plugins Individually
It can be tempting to select all of your plugins and have WordPress update them at the same time. It’s certainly a time saver if everything goes according to plan.
If there is a problem with any of the plugins after an update you will be glad you spent that extra few minutes updating each plugin individually. Using this method allows you to see exactly which plugin caused the conflict and then restore the previous version from a backup straight away.
By updating all of them at the same time you run the risk of having to spend a significant portion of your time discovering the conflicting plugins.
Finding The Conflict
The previous point is good practice, but not something most people are willing to spend the extra few minutes on. If you have updated all of your plugins at the same time you are left with two options, and you want to avoid the second of them if possible.
1. Restore the Plugins
You can completely restore the plugins from the backup you took of them just before the update. Then update each plugin one at a time to find the one causing the conflict.
If your response to point one was “Oh yeah. I was supposed to back them up first.” I feel sorry for you for being reduced to using point two.
2. The Manual Process
You have no backup. You updated all of the plugins at once to save time and now something important is broken. You’re now faced with the laborious task of manually checking each plugin to find the conflict.
To do this you have to deactivate every plugin you have installed.
When they are all deactivated you can activate your primary plugin that is having the problem and make sure it is working correctly – it’s possible that it is the broken plugin.
You then need to activate each plugin, one by one, and check to see whether the conflict has occurred. If you have a lot of plugins installed this could take you some time.
To make matters worse, once you’ve found this conflict you will either have to leave the second plugin deactivated, or try to find the version you had installed before the update – assuming you knew what it’s version number was.
This manual method can take a great deal of time to complete and cause major functionality issues on your site while you carry it out. It’s best to try to avoid this scenario entirely by being proactive, taking backups, and having a plan for updating your website.
Use The Plugin Support Forums To Resolve The Conflict
Once you have located the offending plugin it is a good idea to head to its support forum. These are usually found on the WordPress.org page for the plugin if it is freely available, or the plugin or developer website if it is a premium plugin.
Chances are you aren’t the first person to have the conflict. If you are the lucky patient zero for this problem you should create a thread in the forum or send the developers an email to begin to investigate the problem.
Starting your own forum thread will require creating a WordPress.org account if you don’t have one or logging into the account you created when you purchased the premium plugin.
Replace The Minor Plugin If Resolution Isn’t Possible
There may be no solution to the conflict. You may be left with no option other than forgoing the features of that plugin. At least as a short term solution.
There will be other plugins available to you that carry out the same function. Spend some time searching for a replacement plugin and don’t just use the first one you find. Find one with good support and has been updated by it’s developers recently.
It may even be worth your time contacting the developers of the new plugin and asking them if the conflict you experienced with your previous plugin has been an issue for them.
Remember that you aren’t tied to any one particular plugin and if you can’t find one that does exactly what you want it may be an idea to find someone to create custom code for your website that removes the need for a plugin completely.
While you can use plugins for practically anything on WordPress doing so may not be the best option available to you.
If you are using plugins to carry out simple tasks it is a far smarter option to learn how to replace them with custom code. You can either learn yourself, or have someone write the specific code required to carry out the task add it to your theme.
Each plugin you use chips away at the control you have over your website and puts its long term health into the hands of third party developers.
That developer may not be able to keep the plugin completely up to date. Their code may be messy and have unintentional holes and problems. It may simply use a function that is already used by another plugin you have installed.
Whatever the problem, it can usually be avoided by replacing the plugin with custom code that uses less resources and is less likely to cause other issues.
Have you experienced any major plugin conflicts on your website? How did you resolve them? We’d love to hear about it in the comments.