PluginProbe
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN / 1.3.3
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN v1.3.3
1.3.3 1.3.2 1.3.1 1.3.0 1.2.4 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 All 29 releases
← All changes | includes/class-host.php +11 -1 1.2.41.3.3 View file →
@@ -114,9 +114,19 @@
114 114 * page caching off, and a host that turns it on unprompted is making a
115 115 * decision about shared WordPress state on the user's behalf.
116 116 */
117 117 public static function enable_page_cache(): ?string {
118 - $state = Cache::toggle( true );
118 + /*
119 + * Not consented, deliberately. A host plugin calling this is acting
120 + * on its OWN user's click in its own onboarding — nobody has been
121 + * shown whose advanced-cache.php is about to be replaced, which is
122 + * the disclosure that makes a takeover legitimate in the dashboard.
123 + *
124 + * So a competitor's drop-in comes back as a reason the host can
125 + * render, exactly as it did before, and the takeover stays something
126 + * the site owner does knowingly in xSpeed's own UI.
127 + */
128 + $state = Cache::toggle( true, false );
119 129
120 130 if ( ! empty( $state['blocked'] ) ) {
121 131 return is_string( $state['blocked_reason'] ) && '' !== $state['blocked_reason']
122 132 ? $state['blocked_reason']