If W3 Total Cache is causing issues or throwing error messages, you may need to delete it manually.
In this article, I’ll show you how to quickly remove W3 Total Cache manually and ensure that any other erroneous files are also deleted, enabling you to install a fresh working copy of W3 Total Cache or any other caching plugin.
If you need help installing W3 Total Cache properly, I highly recommend my detailed guide that configures W3 Total Cache to work with CloudFlare for ultimate performance.
How to Manually Uninstall W3 Total Cache
In the General Settings, turn off all the following settings:
- Preview mode - Disable
- Page Cache - Disable
- Minify - Disable
- Database Cache - Disable
- Object Cache - Disable
- Browser Cache - Disable
- CDN - Disable
Make sure you click “Save all settings” once you are done.
At the top of the General Settings page, you will see a message confirming that “The plugin is currently disabled.”
Doing this step will remove some configuration settings that are commonly left behind, although I will show you later in this tutorial how to check for these files manually.
- Go to the Plugins Menu in the WordPress admin sidebar
- Click “Deactive” under the W3 Total Cache Plugin
- Click “Delete”
Some core files are used by most Caching Plugins and sometimes by other plugins not related to caching. These files are located in the “wp-content” directory:
- cache folder
- w3tc-config folder
- object-cache.php (if it exists)
- advanced-cache.php (if it exists)
- dbcache.php (if it exists)
- upgrade folder
In addition, you should delete the following:
- w3-total-cache folder in wp-content/plugins/ (if exists)
To delete the files, you must log in to your server via SSH, FTP, or Control Panel File Manager.
W3TC makes extensive use of the .htacess file. As such, you will need to verify all of the entries made by W3TC have been deleted. If you disabled all the Caching functionality before removing the plugin, everything should be okay. It is worth checking, though.
Each entry related to W3 total cache will start and end with comments like:
#BEGIN W3TC Page Cache core
#END W3TC Page Cache core
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
If you have a multisite installation or still use WordPress 3.4 or below, then you can find the default .htaccess settings here.
If you use a CDN, such as CloudFlare, you should purge all the files to ensure that any files cached are deleted. This might be necessary if you minimized your files within W3 Total Cache.