Cache Enabler

Description

Cache Enabler is a simple, yet powerful WordPress caching plugin that is easy to use, needs minimal configuration, and best of all helps improve site performance for a faster load time. It creates static HTML files of frontend pages and stores them on the server’s disk. This allows the static HTML files to be delivered instead of generating pages on the fly, avoiding resource intensive backend processes from the WordPress core, plugins, and database.

Features

  • Fast and efficient cache engine
  • Automatic smart cache clearing
  • Manual cache clearing
  • WP-CLI cache clearing
  • Cache expiry
  • WebP support (convert images to WebP with Optimus)
  • Mobile support
  • Brotli and Gzip pre-compression support
  • Minification of HTML excluding or including inline CSS and JavaScript
  • Real-time cache size display in the WordPress dashboard
  • Custom post type support
  • 304 Not Modified support
  • Works perfectly with Autoptimize and the majority of other third party plugins

How does the caching work?

Cache Enabler captures page contents and saves it as a static HTML file on the server’s disk. The static HTML file created can be one of several possible cache versions depending on the plugin settings and HTTP request. Accepted static HTML files are then delivered without any database queries or on the fly compression, allowing for a quicker page load.

Documentation

Want to help?

Maintainer

Screenshots

  • Cache Enabler settings page
  • Cache Enabler cache size in the WordPress dashboard

Reviews

25 September 2021
It's very flexible and easy to customize for any site to get full page caching unlike most plugins where rules are set in stone.
23 September 2021
The plugin just works. No configuration necessary. When I had a problem the support team helped super fast and now all my pages are being cached. Highly recommend this plugin!
27 June 2021
Cache enabler plugin is the little gem, that sparks joy. Does as it should but certainly not posing. Neat and fast and everything easy to do. Great with webp, great with autoptimize and great with NGINX servers. Best choice for nginx settings in my (limited) experience. Fast and responsive dev. Happy to have found it over 5 years ago.... Do I try other stuff? Yes occasionally. Is them better? Nope them is not. Only more complicated or slower on my sites.
23 June 2021
Hi, i am using cloudflare as cdn to cache everything. i have used my 3 free page ruels in my cloudflare. and now i want to disable cache for cart and checkout page of woocommerce, can i do that with your plugin even though i use cloudflare? Warm regards B
16 June 2021
A very easy-to-install cache that provides great performance results right out of the box. The support has been outstanding and provided additional code to help meet our special operational needs. The additional child-theme code also worked 100% and arrived within hours of seeking help. We recommend this cache 100%!
Read all 121 reviews

Contributors and Developers

“Cache Enabler” is open source software. The following people have contributed to this plugin.

Contributors

“Cache Enabler” has been translated into 7 locales. Thank you to the translators for their contributions.

Translate “Cache Enabler” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Change Log

1.8.7

  • Update plugin upgrade process for multisite networks (#303)
  • Update wp-config.php file handling (#302)

1.8.6

  • Update requirements check notices (#300)
  • Update advanced-cache.php drop-in file handling (#297)
  • Add additional validation when creating cached files (#299)
  • Add type casts to several filter hooks (#299)
  • Add cache_enabler_settings_before_validation filter hook (#298)

1.8.5

  • Update required WordPress version from 5.5 to 5.1 (#295)
  • Fix plugin upgrade process when disk settings are outdated and a frontend page is requested (#295)

1.8.4

  • Update advanced-cache.php drop-in file handling (#292)

1.8.3

  • Update index file handling (#289)

1.8.2

  • Update cache size transient handling (#287)

1.8.1

  • Fix requirements check (#285)

1.8.0

  • Update advanced-cache.php drop-in file handling to improve reliability and compatibility (#260 and #283)
  • Update settings file to be deleted before the home option is updated to prevent a leftover settings file (#279)
  • Update cache_enabler_bypass_cache filter hook default value to allow a complete override (#277)
  • Update cache size transient to be in real time (#237 and #269)
  • Update cache expiry time to always be a non-negative integer (#265)
  • Update WP-CLI clear subcommand (#261)
  • Update required WordPress version from 5.1 to 5.5 (#260)
  • Update plugin upgrade process to improve reliability and compatibility (#260)
  • Update getting the cache file path to improve creating cache files (#256)
  • Update HTML5 doctype check to be less strict (#254)
  • Update permalink structure handling (#251 and #263)
  • Update requirements check to improve notices shown (#249 and #260)
  • Update cache clearing structure to enhance the automatic cache clearing actions (#247)
  • Add WP-Cron event to clear the expired cache on an hourly basis (#237, #268, and #281)
  • Add new cache clearing structure for option actions (#272 and #280)
  • Add cache engine restart support (#271 and #278)
  • Add constants.php file to plugin directory to allow constant overrides (#260)
  • Add wildcard cache clearing support (#246)
  • Add Brotli compression support (#243 @nlemoine)
  • Add new cache clearing structure for term actions (#234 @davelit)
  • Add cache iterator to improve cache object handling (#237)
  • Fix WebP URL conversion edge case (#275)
  • Deprecate cache_enabler_clear_site_cache_by_blog_id and cache_enabler_clear_page_cache_by_post_id action hooks in favor of replacements (#247 and #274)

1.7.2

  • Update string to be translatable (#235 @timse201)
  • Add cache_enabler_mkdir_mode filter hook (#233)

1.7.1

  • Fix directory creation handling (#221 @stevegrunwell)

1.7.0

  • Update cache clearing for theme, plugin, post, and upgrade actions (#215 and #216)
  • Update cache handling with cache keys (#211)
  • Update settings file deletion handling (#205)
  • Update output buffer handling (#203)
  • Update removing CSS and JavaScript comments during HTML minification (#202)
  • Update WebP URL conversion for installations in a subdirectory (#198)
  • Add CACHE_ENABLER_DIR as definable plugin directory constant (#195 @stevegrunwell)
  • Add explicit directory access permissions (#194 @stevegrunwell)
  • Add exclusive lock when writing files (#191 @nawawi)
  • Fix clear cache request handling (#212)
  • Fix getting wp-config.php (#210 @stevegrunwell)

1.6.2

  • Fix removing CSS and JavaScript comments during HTML minification (#188)

1.6.1

  • Update requirements check (#186)
  • Update cache clearing behavior for comment actions (#185)
  • Update HTML minification to remove CSS and JavaScript comments (#184)
  • Update site cache clearing behavior for multisite networks to ensure cache cleared action hooks are fired when using WP-CLI or clear cache action hooks (#180)
  • Add cache_enabler_convert_webp_attributes and cache_enabler_convert_webp_ignore_query_strings filter hooks (#183)
  • Fix cache clearing behavior on WooCommerce stock update (#179)

1.6.0

  • Update cache clearing behavior for multisite networks when permalink structure has changed to prevent unnecessary cache clearing (#170)
  • Update cache clearing behavior for comment actions to prevent unnecessary cache clearing (#169)
  • Update output buffer timing to start earlier on the advanced-cache.php drop-in instead of the init hook (#168)
  • Update plugin upgrade handling (#166)
  • Add cache_enabler_clear_complete_cache, cache_enabler_clear_site_cache, cache_enabler_clear_site_cache_by_blog_id, cache_enabler_clear_page_cache_by_post_id, cache_enabler_clear_page_cache_by_url, cache_enabler_complete_cache_cleared, cache_enabler_site_cache_cleared, and cache_enabler_page_cache_cleared action hooks (#170)
  • Add cache_enabler_user_can_clear_cache, cache_enabler_exclude_search, cache_enabler_bypass_cache, cache_enabler_page_contents_before_store, cache_enabler_page_contents_after_webp_conversion, cache_enabler_minify_html_ignore_tags filter hooks (#170)
  • Add site cache clearing behavior (#167)
  • Fix requirement notices being shown to all users (#170)
  • Fix setting up new site in multisite network when new site is added outside of the admin interface (#170)
  • Fix getting cache size for main site in subdirectory network (#164)
  • Fix deleting cache size transient (#164)
  • Fix cache clearing (#164 and #167)
  • Fix clear cache request validation
  • Deprecate ce_clear_cache, ce_clear_post_cache, ce_action_cache_cleared, and ce_action_cache_by_url_cleared action hooks in favor of replacements (#170)
  • Deprecate user_can_clear_cache, bypass_cache, cache_enabler_before_store, cache_enabler_disk_webp_converted_data, and cache_minify_ignore_tags filter hooks in favor of replacements (#170)

1.5.5

  • Update advanced cache to prevent potential errors (#161)
  • Update getting settings to create settings file if cache exists but settings file does not (#159)
  • Fix getting settings file edge cases (#158)
  • Fix cache expiry

1.5.4

  • Update default query string exclusion (#155)
  • Update cache engine start check (#155)

1.5.3

  • Add default query string exclusion (#154)

1.5.2

  • Update late cache engine start to be on the init hook instead of plugins_loaded (#153)
  • Add deprecated variable that was previously deleted to improve backwards compatibility (#153)
  • Fix WP-CLI notice errors (#153)
  • Fix creating settings file on plugin update

1.5.1

  • Fix getting settings file

1.5.0

  • Update settings file type to PHP instead of JSON (#147)
  • Update settings file(s) storage location (#147)
  • Update plugin activation, deactivation, and uninstall handling (#147)
  • Update HTML minification to also include or exclude inline CSS (#147)
  • Update cache size handling for multisite networks (#147)
  • Update WP_CACHE constant handling (#140)
  • Update cache cleared admin notice (#139)
  • Update admin bar clear cache buttons (#139)
  • Update output buffer timing to start earlier on the init hook instead of template_redirect (#137)
  • Update default cache behavior to not bypass the cache for query strings (#129)
  • Update cache clearing setting for when any post type is published to include all post actions (#142)
  • Update cache clearing setting for post actions to clear the page and/or associated cache by default (#142)
  • Update settings page layout (#129 and #142)
  • Update WebP URL conversion for images with density descriptors (#125)
  • Add cache engine to improve handling and performance (#147)
  • Add cache bypass method for Ajax, REST API, and XMLRPC requests (#147)
  • Add new cache clearing structure for post publish, update, and trash actions (#129)
  • Add post type, taxonomies, author, and date archives to the new associated cache (#129)
  • Add new cache exclusions setting for query strings (#129)
  • Fix cache size file status edge case (#147)
  • Fix WP_CACHE constant not being set edge case (#140)
  • Fix settings file from using unvalidated data (#129)
  • Fix clear URL admin bar button for installations in a subdirectory (#127)
  • Fix WebP URL conversion for installations in a subdirectory (#125)
  • Remove cache clearing publishing action from post sidebar in favor of the new cache clearing structure for post actions (#129)
  • Remove cache clearing setting for WooCommerce stock updates in favor of the new cache clearing structure for post actions (#129)
  • Remove cache inclusions setting for URL query parameters because of the updated default cache behavior for query strings (#129)

1.4.9

  • Fix WebP URL conversion changing all image paths to lowercase

1.4.8

  • Update WebP URL conversion for inline CSS (#116)
  • Update WP-CLI clear subcommand messages (#111)
  • Update WP-CLI clear subcommand for multisite networks (#111)
  • Fix WebP URL conversion image matching edge cases (#116)
  • Fix cache clearing for installations in a subdirectory
  • Fix advanced cache settings recognition for installations in a subdirectory
  • Fix file permissions requirement notice

1.4.7

  • Update getting wp-config.php if one level above installation (#106)
  • Add clear types for strict cache clearing (#110)
  • Fix advanced cache settings recognition for subdirectory multisite networks
  • Fix WP-CLI clear subcommand for post IDs (#110)
  • Fix scheme-based caching for NGINX/PHP-FPM (#109 @centminmod)
  • Fix trailing slash handling

1.4.6

  • Add cache bypass method for sitemaps (#104)
  • Fix cache clearing for subdirectory multisite networks (#103)

1.4.5

  • Update WP_CACHE constant handling (#102)
  • Add cache bypass method for WP_CACHE constant (#102)
  • Add translation descriptions (#102)
  • Fix cache handling for default redirects (#102)

1.4.4

  • Update cache handling for HTTP status codes (#100)

1.4.3

  • Update cache clearing by URL (#99)
  • Fix advanced cache settings updating unnecessarily (#99)

1.4.2

  • Update cache clearing for the clear URL admin bar button (#98)
  • Update scheme-based caching (#98)
  • Fix advanced cache path variants (#98)

1.4.1

  • Fix undefined constant

1.4.0

  • Update default cache behavior for WooCommerce stock update (#88)
  • Update cache clearing setting for plugin actions (#91)
  • Update admin bar clear cache buttons (#96)
  • Update cache behavior for logged in users (#95)
  • Update default clear cache publishing action (#88)
  • Update advanced cache settings (#91 and #92)
  • Update trailing slash handling (#91)
  • Update settings page (#84 and #92)
  • Add cache clearing setting for WooCommerce stock updates (#88)
  • Add fbclid as default URL query parameter to bypass cache (#84)
  • Add scheme-based caching (#94)
  • Fix advanced cache settings recognition for multisite networks (#92)

1.3.5

  • WP-CLI cache clearing (Thanks to Steve Grunwell)
  • Added cache_enabler_disk_webp_converted_data filter
  • Improved WebP URL conversion
  • Fixed advanced cache issue

1.3.4

  • Reverted change to page specific as new default

1.3.3

  • Replaced wp_die in advanced cache

1.3.2

  • Changed to page specific as new default
  • Added regex setting for analytics tags in get variables
  • Fixed 304 responses

1.3.1

  • Fix for missing trailing slashes was incomplete
  • Add filter option before minification

1.3.0

  • Clear cache on WooCommerce stock updates

1.2.3

  • Fix expiry time
  • Allow to customize bypass cookies
  • Fix Autoptimize config warning
  • Pages can now be excluded from cache by a path matching regex
  • Plugin upgrades can now trigger cache clear
  • Scheduled posts and drafts are now properly handled
  • A missing trailing slash will now redirect like WordPress does by default

1.2.2

  • Fixed settings form issue

1.2.1

  • Minor fixes

1.2.0

  • Added advanced cache feature
  • Clear cache if reply to a comment in WP admin

1.1.0

  • Added the possibility to clear the cache of a specific URL
  • Supports now Windows filesystems
  • Added X-Cache-Handler to indicate if loaded through PHP
  • Support of WebP images generated by ewww
  • Dynamic upload directory for WebP images
  • Fixed multisite purge issue
  • Added requirements checks
  • Made plugin ready for translation

1.0.9

  • Option to disable pre-compression of cached pages if decoding fails

1.0.8

  • Added support for srcset in WP 4.4
  • Improved encoding (utf8)

1.0.7

  • Added cache behavior option for new posts
  • Improved metainformation of the signature
  • Optimized cache handling for nginx

1.0.6

  • Fixed query string related caching issue

1.0.5

  • Credits update

1.0.4

  • Changed WebP static file naming

1.0.3

  • Fixed WebP version switch issue

1.0.2

  • Added support for WebP and CDN Enabler plugin

1.0.1

  • Added WebP support and expiry directive

1.0.0

  • Initial Release