Often deactivating a WordPress cache plugin does not stop all caching activity, either because powerful cache plugins use individual caching features or because the plugin was not properly disabled. Any of these can create strange behaviors and difficult to solve errors.

The case of multi-caching features plugins:

Well-known and powerful caching plugins like W3-Total-Cache and WP-Rocket come with individual caching features which can be toggled by separate.

Different types of individual caching features are:

  • Basic cache (or HTML cache)
  • Database queries cache
  • Object cache
  • Js and CSS minify (not caching but assets compressing)

For some of these features to be enabled, the aforementioned plugins need code to be added to some core/important WordPress files (like /wp-config.php and /.htaccess). These files are not meant to be edited often because the minimum syntax error in these files can prevent the entire site to work. So these features should be disabled individually before formally deactivating the cache plugin from the WordPress plugin manager.

What happens when you don’t properly disable a cache plugin

Sometimes people end up manually disabling plugins by changing their folder name at /wp-content/plugins/{your_plugin_name} but in the case of caching plugins, this does not allow the plugin to fully deactivate itself correctly with its own functions, leaving rests of it still working and causing strange behaviors as unexpected errors on a site. In the best case you will not be able to see your changes to the site even when the cache plugin shows as deactivated at the WordPress admin.

How to properly disable your cache plugin

  • If your plugin has individual caching features, go and deactivate them one by one before going into wp-admin and deactivating the plugin.
  • If your plugin does not have individual caching features, look inside its options page for a “toggle the whole cache On and Off” option and turn it Off. Else go ahead and deactivate it from the wp-admin plugin manager.

To confirm your cache plugin is fully disabled

Look for code related to caching in the next paths (either via FTP or cPanel file manager):

a) /wp-config.php file

Usually define() and require() or include() PHP functions. Example for WP-Cache:

define('WP_CACHE',  true);

b) /.htaccess file

Code between comments like #begin {my_plugin_name} and #end {my_plugin_name}. Example for WP-Rocket plugin

# BEGIN WP Rocket v2.10.9
..a lot of rules here..
# END WP Rocket

c) Files and/or folders at /wp-content/

Look for any folder and/or files inside /wp-content/ that you can relate to your plugin (usually with the word “cache” on the file/folder name). Example for WP-Cache:

Notes

  1. If you’re not familiar with reading and editing important/core WordPress files you should delegate this to a programmer you trust on.
  2. If you don’t have your cache plugin active, re-activate it from the WordPress plugin manager and follow the steps in the list above to properly disabling it.
  3. If you need to deactivate the cache but you’re not able to access wp-admin, you’ll need to do this manually (better delegate this to your programmer).
  4. Sometimes deactivating cache can show up different errors on a site. This happens when you make changes on your site and you don’t flush cache. For example, you have a plugin exclusively for wp-admin and you think cache should not be flushed because this plugin does not affect the frontend part of your site, but if this plugin is either having a conflict with another plugin or throwing an error, you could not see the error until you deactivate cache or flush/delete it.