Skip to main content

Plugin conflicts

A plugin conflict is far more likely than a theme regression. This page is the procedure for finding and confirming one.

The bisect procedure

This works on every problem and takes five minutes.
1

Back up first

Files and database. This is what makes the next steps safe.
2

Deactivate every plugin

Plugins → Installed Plugins → Deactivate using the bulk action at the top.
3

Check the site

If the problem is gone, a plugin is the cause and you have narrowed it to that set.
4

Reactivate the first half

Check again.
5

Reactivate the second half

Check again.
6

Repeat within the failing half

Until you have isolated one plugin.
7

Confirm the culprit

Deactivate just that plugin and verify the problem returns when it is active. This final confirmation matters — it rules out coincidence.
Deactivating plugins can break the site in new ways. A page builder, a forms plugin, or a security plugin may be required for other things to work. Have your backup ready, and do this on staging if you have it.

Faster methods

Via WP-CLI

Much faster than clicking when you have shell access.

Via the database

If the dashboard is unreachable, deactivate by editing the active_plugins option.
Back up the database before running that query. It deactivates every plugin, including your security plugins. Do it only when you have no other way in, and do not do it on a production site without a tested restore path.

Confirming it is really a conflict

Strong signal. Check each plugin’s update timestamp against when the problem started.
Strong signal, though some plugins conflict with each other rather than with the theme.
Also plausible — a plugin may have been built for your previous theme’s architecture.
A “conflict” that only exists when a stale cached file is served. Clear all caches first.

Where conflicts show up

The CSS optimiser problem

This one is specific to this theme and worth understanding.
The theme’s main stylesheet is already served without blocking render — it uses a media="print" onload="this.media='all'" swap with a <noscript> fallback.A CSS optimisation plugin that also defers, inlines, or reorders stylesheets may double-process it and produce an unstyled or broken site. Fonts are preloaded in the same way.If you install a caching plugin with CSS optimisation and the site goes unstyled, disable that specific feature first.
See Performance.

Plugins most likely to conflict

If the conflict is with the theme

Sometimes the finding is that the plugin is genuinely incompatible with this theme rather than buggy.
Some plugins read a theme’s registered settings. This theme keeps everything in the Customizer, which such plugins cannot read.
Plugins designed to restyle other themes may inject CSS that fights this theme’s tokens.

If it is a plugin bug

A plugin that conflicts with a third-party theme is usually a plugin bug, or a plugin that should detect and adapt.
Tell the plugin author exactly which theme and version, and what breaks. Specific reports get fixed.
Most plugins let you install a previous version from the plugin page. It is a temporary fix that buys time.

After you fix it

1

Clear all caches

The cached CSS and JavaScript from the conflicted state will persist otherwise.
2

Clear the object cache

Restarting PHP often helps. Some hosts flush on request.
3

Re-test the same page

Confirm the fix in the same place you found the problem.
4

Test on mobile

Many conflicts only manifest at certain breakpoints.
5

Audit your plugin list

If you found one conflict, there may be more. Consider removing plugins you have not used in months.

Prevention

Plugin compatibility

What to expect from specific plugins.

Blank site or fatal error

When a conflict is severe enough to take the site down.