Proxy Cache Purge

Changelog

5.12.0 (2026-06)

  • Change: The GetPageSpeed Amplify recommendation links (readme + Check Caching results) now point to the dedicated Varnish monitoring landing page for a more relevant first impression.

5.11.1 (2026-06)

  • Security: The manual “Purge Cache (This Page)” action (vhp_flush_do) now only purges URLs on this site’s own host, and requires a capability (filter: vhp_manual_purge_capability, default edit_published_posts) in addition to the nonce. Previously a low-privileged user could reuse the purge nonce to point the server’s outbound PURGE request at an arbitrary host – a blind SSRF reachability oracle. Reported privately by Austin Ginder.

5.11.0 (2026-06)

  • Fix: Async purge queue self-heals from the stuck full-queue state where vhp_process_purge_queue was silently never re-scheduled. Watchdog re-arms a ghost event when the queue is non-empty and vhp_varnish_last_queue_run is older than 5 minutes.
  • Fix: enqueue_urls() now ensures the cron event is scheduled even when a full purge is already queued.
  • Change: Cron-mode default flipped. DISABLE_WP_CRON no longer auto-enables async purging — opt in via VHP_ENABLE_CRON_PURGING, the vhp_varnish_cron_purging site option, or the vhp_purge_use_cron filter.
  • New: VHP_ENABLE_CRON_PURGING constant and vhp_purge_queue_watchdog_seconds filter.

5.10.0 (2026-05)

  • New: Recommendation for GetPageSpeed Amplify cache monitoring (readme + Check Caching results).

5.9.2 (2026-05)

  • Fix: Corrected @param/@return docblock types on purge_post(), purge_url(), and related methods so they match the values actually passed and returned, removing false IDE and static-analysis warnings (reported by Sjoerd Boerrigter). No runtime behavior changes.
  • New: CI lints PHPDoc parameter/return types against WordPress function signatures to catch docblock drift automatically.

5.9.1 (2026-05)

  • Update: Tested up to WordPress 7.0
  • Update: Requires PHP bumped from 5.6 to 7.4 to match WordPress 7.0’s PHP floor. Sites on PHP < 7.4 will not see this update.

5.8.1 (2026-03)

  • New: Regex purge URLs for category, tag, and blog listing pages to properly invalidate paginated archive pages (e.g., /category/news/page/2)

5.7.0 (2026-02)

  • New: Detection of “Vary: Accept” header which causes severe cache fragmentation.
  • New: Contextual Cacheability Pro recommendations in cache diagnostics, post-purge messages, plugin action links, admin menu, E2E test results, and Site Health.

5.6.4 (2026-01)

  • New: Added VHP_DISABLE_CRON_PURGING constant to force-disable background purging even when DISABLE_WP_CRON is enabled. Useful for low-traffic sites that use external cron but prefer immediate cache purges.

5.6.3 (2026-01)

  • Fix: Manual cache purge actions now execute immediately regardless of WP-Cron mode. Previously, “Purge Cache All Pages” and “Purge This Page” were queued when DISABLE_WP_CRON was enabled.

5.6.2 (2026-01)

  • Fix: Cacheability Pro recommendation moved to dismissable admin notice

5.6.0 (2026-01)

  • New: Added recommendation for Cacheability Pro cache warming plugin on settings page.

5.5.3 (2025-12)

  • New: End-to-End Cache Test in “Check Caching” admin page – a comprehensive 7-step test that verifies both caching AND purging work correctly, without relying on header detection heuristics.
  • Fix: Header Analysis tab now stays active after running a URL scan.
  • Fix: Removed duplicate introductory text in Header Analysis tab.

5.5.2 (2025-12)

  • Fix: Removed development files from WordPress.org distribution.
  • Fix: Added concurrency control to CI workflows to prevent SVN deploy race conditions.

5.5.1 (2025-12)

  • New: WP-CLI –all flag for explicit full site cache purge.
  • New: WP-CLI –url-only flag to purge exact URL without wildcard matching.
  • New: WP-CLI –tag=<tag> option for tag-based cache purging (requires Cache Tags mode).
  • Doc: Fixed WP-CLI documentation – wp varnish purge correctly documented as full site purge.
  • Doc: Fixed “WP CLI” typo to “WP-CLI”.
  • Dev: Added PHPCS/PHPStan linting infrastructure and GitHub Actions CI.
  • Dev: New pytest coverage for WP-CLI purge command variants.

5.5.0 (2025-12)

  • Fix: Scheduled posts now properly purge cache when auto-published via WP-Cron. Previously, purges were queued but not processed until the next cron run, leaving stale content.
  • New: Added transition_post_status hook to handle future → publish transitions synchronously, ensuring immediate cache invalidation for scheduled posts.
  • New: Shortlink URLs (?p=XXX) are now purged when scheduled posts publish, clearing any cached 404 responses.
  • Doc: Added guidance on cron frequency for background purging mode – recommends every-minute cron for minimal stale content.
  • Dev: New pytest coverage for scheduled post publishing via WP-Cron.

5.4.0 (2025-12)

  • New (BETA): Optional Cache Tags / Surrogate Key purge mode, controlled via the “Use Cache Tags” setting.
  • New (BETA): Tag-mode enablement based on standard Surrogate-Capability headers from surrogates (Edge Architecture spec) or the VHP_VARNISH_TAGS wp-config define.
  • New: Admin UI improvements – properly associated labels for checkboxes and clearer explanatory copy.
  • Dev: Test VCL and pytest stack updated to cover tag-based purging behaviour.

5.3.0 (2025-09)

  • New: VHP_EXCLUDED_POST_STATUSES define to exclude statuses (e.g. drafts) from purge triggers.
  • New: varnish_http_purge_valid_post_statuses filter to customize statuses programmatically.
  • Fix: REST URL generation for tags and custom taxonomies; respect rest_base and use term IDs.
  • Fix: Avoid booleans in generated URL lists for REST entries.
  • Fix: Correct WP version check (pre-4.7 only) for deactivation logic.
  • Fix: Correct per-host IP loop in purge header filtering.
  • Fix: Properly strip query strings when deduplicating purge URLs.
  • Fix: Debugger wp_remote_get args and header checks (Via header scalar/array).
  • Polish: Typo fix in DevMode settings message.

5.2.2 (2024-08)

  • Fix: Warning / Notices resolved.

5.2.1 (2024-01)

  • New: Allow custom X-Varnish header name.

5.2.0 (2023-07)

  • Fix: Debug if Via headers are an array.

Plugin Website
Visit website

Version:
5.12.0
Last Updated
June 24, 2026
Active Installs
50000
Requires
WordPress 5.0
Tested Up To
WordPress 7.0
Requires PHP
7.4

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.