A few days ago I began the process of removing W3 Total Cache from all my blogs. Why, you might wonder, would I do that. The simple answer is that W3 Total Cache crashed my sites. The plugin conflicted one too many times with other plugins and I’m getting old and tired and I’m fast coming over to the idea that if a plugin is too much hassle to setup then it shouldn’t call itself a plugin so much as it should call itself a nail in sanity’s coffin.
You’d expect it to be easy to remove W3 Total Cache. And uninstalling the plugin should be but W3 Total Cache hooks its tentacles into a WordPress site’s htaccess file, sticks multiple files into the wp-content directory and, after removal, Google persistently requests (no longer existent) cached minified CSS files.
All in all, getting rid of W3 Total Cache can be a bigger pain than being kicked in the ass by a galloping donkey on steroids.
In general, once setup, W3 Total Cache can be left to cache WordPress blog posts and pages faultlessly without any human monitoring but it gets temperamental when new plugins are installed, especially ones that use Javascripts when W3TC is configured to minifi Javascript.
If you use W3TC and you find some newly installed plugins fail to work or they bring down your whole site then you can almost guarantee the fault is with W3TC. Ditto if plugins work for logged in users but not for logged out visitors.
When you install a plugin and a W3TC cached site breaks, and you want to keep W3 Total Cache installed then check w3TC’s minification and concatination settings before deciding to remove W3TC.
Removing W3TC is a bit of an art
You will need to find an adequate replacement for W3TC. I’ve moved over to Quick Cache Pro and I’m very happy with it. My sites work well with Quick Cache Pro and get good results from speed tests (when externally loaded scripts are discounted, though Quick Cache can cache and minify external scripts if set to do so).
Removing the monster that is W3 Total Cache
Important: keep the plugin enabled until told to disable it. If you’ve already disabled and deleted W3 Total Cache then I suggest you re-install it and re-enable it then follow these instructions to properly remove W3TC.
- Make sure the latest version of W3 Total Cache is installed.
- Ensure your htaccess file has its permissions set to at least 644.
- Ensure wp-config.php has its permissions set to at least 644.
- Enter W3TC’s General Settings panel (Performance>General Settings):
- Disable all caching
- Run through the list of enabled caching types and untick “Enable” for each and every one of them
- At the bottom of the General Settings page is a Miscellaneous section, untick everything in it
- Click “Save All Settings”
- If you are unable to disable the caching options just skip to step 6.
- At the top of the screen, in red writing, you will now see that it says “The plugin is currently disabled”.
- Go to your WordPress plugins panel and find W3 Total Cache (Plugins>Installed Plugins):
- Deactivate W3 Total Cache
- Delete W3 Total Cache.
- Browse your site’s root directory with an FTP program or cPanel provided file manager. Enter the wp-content directory and delete the following W3TC files (if they exist):
- w3-total-cache-config.php
- db.php
- advanced-cache.php
- Still in the wp-content directory, delete the ‘cache’ directory and delete the directory ‘w3tc’ and all its content.
- Check the site’s .htaccess file has no W3TC re-write rules in it.
- Finally, open the wp-config.php file and remove:
define('WP_CACHE', true);
Recommended WordPress cache plugin
Each server is different and each site is different so there is no ‘one cahe to rule them all’ WordPress cache plugin. Trial and error works best for establishing the best cache plugin for your site. Some sites work better without any caching.
My preferred cache plugin is Comet Cache Pro. More plugin recommendations to improve page speed can be found here.