Version 2.2.0
October 17, 2026
Added
- Setting "Cache pages with query strings" (
cacheQueryStrings), off by default - The queue job has a timeout per page request and is retried up to 3 times
Changed
- Pages with query strings are no longer cached by default, every new query string created a new cache file
- Cached pages are only served to guests, not to logged-in users
- Previews and requests with a token are never cached or served from the cache
- Saving an element with a changed URI (slug or parent) deletes the cache of the old URI
- Saving a nested element (e.g. a Matrix or Neo block) refreshes the page of its owner
- Bulk resaves no longer push pages into the cache queue
- Cache files are written atomically, folders are created with
0755 - Fewer database queries when pushing pages into the queue
- The rewrite examples skip the cache for logged-in users (
CraftSessionIdcookie)
Fixed
- Query strings like
?a=/../../could write cache files outside of the cache folder - A failed cache job blocked all later cache refreshes
pagecache/cache/refreshandpagecache/cache/deletewithout--tagsdid nothing- The cache job did not wait for all page requests, so some pages were not cached again
- Elements of other sites than the primary site were not found by the cache job
- Refreshing the cache crashed if a cached element was deleted, and duplicate elements were queued
- Excluded/included URL patterns with
/(e.g.news/archive) caused a PHP warning and never matched - The sidebar actions accepted GET requests, requests outside of the control panel and users without permission to save the element
- The sidebar actions did not work in slideouts
- The cache folder was not created on install
- The brotli rewrite example used the wrong encoding name (
brotliinstead ofbr) - PHP 8 deprecation warnings for optional parameters before required ones
- Console commands in the README
Version 2.1.5
October 17, 2026
Fixed
- Saving an entry with nested Neo or Matrix blocks hung until the request timed out, so the entry was not saved and the cache was not refreshed
- Saving drafts and revisions no longer triggers a cache refresh
- Saving a new element could delete the cache of an unrelated entry
- Related elements were resolved from the wrong element when collecting Neo and Super Table owners
Version 2.1.4
September 29, 2025
Fixed
- Fixed a logged warning
- Saved entries kept being a draft
Version 2.1.3
July 20, 2025
Added
- Command to warm up all entries
Version 2.1.2
July 8, 2025
Fixed
- Fixed error on initial cache folder creation if the folder already exists
- Fixed Install migration
Version 2.1.1
May 2, 2025
Changed
- Only Render meta tags once
Version 2.1.0
May 2, 2025
Changed
- improved plugin settings template
- removed HTML optimization
- refactor code
- added sidebar html
- updated pagecache action buttons
- added page cache html footer
- added "exclude" variable
- added "tags" variable
- added delete cache command
Version 2.0.1
April 14, 2025
Fixed
- Fixed implicitly nullable parameters deprecation warning
- Decode URL before checking against include/exclude list
Version 2.0.0
February 10, 2025
Changed
- Craft CMS 5.x ready
Version 1.4.1
May 2, 2025
Changed
- Only Render meta tags once
Version 1.4.0
May 2, 2025
Changed
- improved plugin settings template
- removed HTML optimization
- refactor code
- added sidebar html
- updated pagecache action buttons
- added page cache html footer
- added "exclude" variable
- added "tags" variable
- added delete cache command
Version 1.3.1
April 14, 2025
Fixed
- Fixed implicitly nullable parameters deprecation warning
- Decode URL before checking against include/exclude list
Version 1.3.0
February 10, 2025
Changed
- Deprecated
csrfInput()variable - Added
includeUrlsconfig option - Don't cache pages when the current user is logged in
Fixed
- Drastically improved DB queries
Version 1.2.3
August 17, 2023
Fixed
- fixed migrations run on install
- log response errors
Version 1.2.2
August 13, 2023
Fixed
- added uid to PageCacheQueueRecord
Version 1.2.1
August 13, 2023
Added
- added console command
Version 1.2.0
August 13, 2023
Added
- added rewrite rules in README.md
- added batch job handling
Fixed
- fixed excludedUrls on all sites
- disabled ElementAction buttons if plugin is disabled
Changed
- fixed async requests in PageCacheTask
- disable optimize HTML by default
- decode (special characters) in path
Version 1.1.0
June 3, 2023
Added
- added clear caches utility
Version 1.0.0
May 13, 2023
Fixed
- cleanup
pagecache.php - prevent loading jquery when using
PageCacheVariable
Version 1.0.0-beta.8
March 18, 2023
Fixed
- Fixed typo in
PageCacheService::deleteAllPageCaches()
Version 1.0.0-beta.7
March 1, 2023
Fixed
- Refactor recreate/delete cache when globals change
Version 1.0.0-beta.6
March 1, 2023
Fixed
- Don't cache pages with active assets transforms
- Remove __home__ from URIs
- Refactor recreate/delete cache when globals change
Version 1.0.0-beta.5
February 27, 2023
Fixed
- Fixed exception of $owner->owner
Version 1.0.0-beta.4
February 25, 2023
Fixed
- Check sub-owner elements on relations
Version 1.0.0-beta.3
February 1, 2023
Fixed
- Fixed string replace in PageCacheService@parsePath()
Version 1.0.0-beta.2
February 1, 2023
Added
- Changed .htaccess rewrite rules location
- Added images for plugin store
Fixed
- Settings validation rules
- PHP 7 compatibility
Version 1.0.0-beta.1
January 31, 2023
Added
- Going live with beta
Version 0.0.1
December 13, 2022
Added
- Project setup
- Initial beta release