| @@ -93,16 +93,17 @@ | ||
| 93 | 93 | // Integrations that clear OTHER plugins' caches of rendered output |
| 94 | 94 | // (Elementor's element cache + generated CSS). Registers a listener |
| 95 | 95 | // only; nothing runs until Cache::purge_render_caches() asks. |
| 96 | 96 | Render_Caches::boot(); |
| 97 | - // Server_Caches needs no boot(): Cache::dispatch_purge_event() calls it | |
| 98 | - // directly so a throwing third-party listener cannot skip it. | |
| 99 | - | |
| 100 | - // Forward a full purge to a full-page cache owned by the WEB SERVER | |
| 101 | - // (nginx FastCGI, via the host's Nginx Helper install). Registers a | |
| 102 | - // listener on xspeed_after_purge_all only; it stands down unless | |
| 103 | - // that cache is actually configured. | |
| 104 | - Host_Page_Caches::boot(); | |
| 97 | + // Forwarding needs no boot(): Cache::dispatch_purge_event() calls | |
| 98 | + // Server_Caches::forward() directly so a throwing third-party listener | |
| 99 | + // cannot skip it. Both built-in server-cache adapters live behind it — | |
| 100 | + // LiteSpeed, and the nginx FastCGI cache reached through the host's | |
| 101 | + // Nginx Helper install (Host_Page_Caches), which is why neither is | |
| 102 | + // booted here. This boot() registers one listener only: the single | |
| 103 | + // purge that runs after an import, which the nginx adapter's import | |
| 104 | + // gate stands down in favour of. | |
| 105 | + Server_Caches::boot(); | |
| 105 | 106 | |
| 106 | 107 | // Register Free modules via the same action xspeed-pro uses, so |
| 107 | 108 | // the bootstrap path is symmetric across tiers. |
| 108 | 109 | add_action( 'xspeed_register_modules', array( $this, 'register_free_modules' ) ); |