Title: Flexa Cache
Author: FlexaTech
Published: <strong>Agẹmọ  12, 2026</strong>
Last modified: Ògún  13, 2026

---

Ṣàwárí àwọn plugin

![](https://ps.w.org/flexa-cache/assets/banner-772x250.png?rev=3604442)

![](https://ps.w.org/flexa-cache/assets/icon-256x256.png?rev=3604442)

# Flexa Cache

 Láti ọwọ́ [FlexaTech](https://profiles.wordpress.org/flexatech/)

[Ṣe ìgbàsílẹ̀](https://downloads.wordpress.org/plugin/flexa-cache.1.1.1.zip)

 * [Àwọn àlàyé](https://yor.wordpress.org/plugins/flexa-cache/#description)
 * [Àwọn àgbéyẹ̀wò](https://yor.wordpress.org/plugins/flexa-cache/#reviews)
 *  [Ìgbéwọlẹ̀](https://yor.wordpress.org/plugins/flexa-cache/#installation)
 * [Ìdàgbàsókè](https://yor.wordpress.org/plugins/flexa-cache/#developers)

 [Ìrànlọ́wọ́](https://wordpress.org/support/plugin/flexa-cache/)

## Àpèjúwe

Flexa Cache is a full-featured WordPress page-cache and front-end optimization plugin.
It installs a self-contained `advanced-cache.php` drop-in that serves compressed
static HTML files before WordPress even loads — the same technique used by WP Fastest
Cache and W3 Total Cache — giving you maximum TTFB improvement on both Apache and
nginx hosts.

**Page Cache**

 * Static HTML cache served by a pre-WordPress drop-in (no PHP/MySQL on cache hits)
 * Gzip pre-compressed `.gz` files served natively
 * Separate mobile cache variant (`index-mobile.html`) when Mobile Theme is enabled
 * Smart invalidation: purge on new post, updated post, comments, theme/menu/widget
   changes, and WooCommerce product/stock updates
 * Per-URL cache purge from the admin UI, WP-CLI, or REST API
 * Cache preloader via Action Scheduler (or WP-Cron fallback) with start/cancel/
   status controls
 * Widget output cache with O(1) versioned-key invalidation

**Front-End Optimization**

 * Minify HTML (whitespace collapse) and Minify HTML Plus (inline CSS/JS trim)
 * Minify CSS and Minify CSS Plus (deeper punctuation squeeze)
 * Combine CSS — adjacency-only buffer fusion preserving cascade order
 * Combine JS / Combine JS Plus — concatenate header and footer scripts
 * Gzip — mod_deflate `.htaccess` block for dynamic (non-cached) responses
 * Browser Caching — Expires/Cache-Control `.htaccess` block
 * Disable Emojis — remove WordPress emoji scripts, styles, and DNS prefetch
 * Lazy Load — native `loading="lazy"` + `decoding="async"` on images and iframes
 * Render Blocking JS — add `defer` to render-blocking scripts
 * Google Fonts Async — rewrite Google Fonts `<link>` to preload + `onload` swap
   with `<noscript>` fallback
 * Delay JS — neutralise non-critical external scripts until first user interaction
   or 7-second idle fallback

**Developer-Friendly**

 * WP-CLI: `wp flexa-cache clear [--url=<url>]`, `wp flexa-cache status`, `wp flexa-
   cache preload [start|status|cancel]`
 * REST API: `/flexa-cache/v1/cache/purge`, `/cache/stats`, `/cache/preload`
 * Filterable hooks: `flexa_cache/engine/is_cacheable`, `flexa_cache/engine/buffer`,`
   flexa_cache/store/dir`, `flexa_cache/purged`, `flexa_cache/settings/languages`,
   and more
 * Kill switch: `?flexa_cache_optimize=0` disables optimization for a single admin
   request
 * Exclusion lists for URLs, cookies, user agents, CSS handles, and JS handles

**Object Cache (Redis)**

 * Persistent Redis object cache: caches WordPress options, transients, and post/
   term/user meta and query results across requests, cutting database load
 * Installs a self-contained `object-cache.php` drop-in with an in-memory L1 + Redis
   L2 layout
 * One-click enable/disable and a “Test & save connection” form that writes the 
   config to `wp-config.php` (secrets never touch the database)
 * Crash-safe by design: if Redis becomes unreachable the site keeps running (degrades
   to in-memory) with an admin notice and a circuit breaker — never a white screen
 * Serializers (PHP, igbinary, JSON, msgpack) and compression (LZ4, Zstd, LZF), 
   key prefetch, and alloptions splitting
 * Live analytics: hit-ratio / operations / memory charts, a per-group key table,
   Query Monitor panel, and WP-CLI (`analytics`, `watch`, `groups`, `slowlog`)
 * Multisite aware, with per-site and network flush scopes
 * Advanced Redis topologies — Cluster, Sentinel, Replicated (master/replica), and
   the Relay/Predis clients — are available through the separate **Flexa Cache Pro**
   add-on

**Source code for compiled JavaScript and CSS**

The plugin ships a compiled admin UI in `assets/dist/`. The human-readable
 source(`
apps/admin/src`) and the build tooling are publicly available at:

https://github.com/flexatech/flexa-cache

The admin UI is built with npm and Vite:

 1. `npm install`
 2. `npm run build` (or `npm run dev` for a watched dev build with HMR)

## Ìgbéwọlẹ̀

 1. Upload the plugin files to `/wp-content/plugins/flexa-cache`, or install through
    the WordPress **Plugins** screen.
 2. Activate the plugin through the **Plugins** screen.
 3. Open **Flexa Cache** from the admin sidebar (located below Settings).
 4. Enable the **Cache System** toggle and click **Save Settings**.

**After a plugin update:** deactivate and reactivate Flexa Cache once so the `advanced-
cache.php` drop-in is refreshed. This step is only needed after an update that changes
the drop-in — the release notes will say so when it applies.

## FAQ

### How does the page cache work?

On activation, Flexa Cache installs an `advanced-cache.php` drop-in into `wp-content/`
and adds `define('WP_CACHE', true)` to `wp-config.php`. On the next uncached request,
the plugin generates a static HTML file. Every subsequent request for that URL is
served directly from the file — no PHP execution, no database query.

### Does Flexa Cache work with WooCommerce?

Yes. Cart, checkout, and account pages are automatically excluded from the cache.
The cache is also purged when a productÌtumọ̀ Yorùbá: ’s stock level or price changes.

### Does it work on nginx?

The static file cache works on any server (the drop-in uses PHP `readfile()`). The
Gzip and Browser Caching toggles write Apache `.htaccess` rules; the pluginÌtumọ̀
Yorùbá: ’s class docblocks include the nginx equivalent snippets for hosts that 
need them.

### How do I clear the cache?

Click **Delete Cache** in the Flexa Cache settings page, use `wp flexa-cache clear`
from the command line, or call `POST /wp-json/flexa-cache/v1/cache/purge`. To clear
a single URL, use the per-URL input in the Cache Stats panel or `wp flexa-cache 
clear --url=https://example.com/page/`.

### What does “Minify JS” do?

The Minify JS toggle is a documented safe no-op when used alone. JavaScript is only
ever concatenated (via Combine JS), never minified in isolation — the plugin ships
no JS parser. If you want JS minification, enable Combine JS together with Minify
JS.

### Will it conflict with other caching plugins?

Flexa Cache checks for a foreign `advanced-cache.php` on activation and refuses 
to overwrite it. If you already have a caching plugin installed, deactivate it and
remove its drop-in before activating Flexa Cache.

### Where are the plugin settings?

In the WordPress admin sidebar, click **Flexa Cache** (located below Settings). 
Settings are organised into five sections: Cache, Invalidation, Performance, Exclusions,
and Danger Zone.

### What is the Object Cache and do I need Redis?

The Object Cache is a persistent store for WordPressÌtumọ̀ Yorùbá: ’s internal data(
options, transients, meta, query results) that normally lives in the database. Backing
it with Redis means those lookups are served from memory across requests, which 
reduces database load — especially on WooCommerce and other dynamic sites. It requires
a reachable Redis server and the PHP `redis` extension. It is independent of the
page cache; you can run either or both.

### What happens if Redis goes down?

Nothing breaks. Flexa Cache detects the failure mid-request, serves from its in-
memory layer for the rest of the request, and opens a short-lived circuit breaker
so the next requests do not stampede a dead server. An admin notice and a Site Health
warning appear, and the cache recovers automatically once Redis is back.

### Does enabling the Object Cache store my Redis password in the database?

No. The connection settings (including the password) are written to a marked block
in `wp-config.php`, never to the options table, and the password is masked in every
diagnostic, REST, and CLI output.

### Can I use Redis Cluster, Sentinel, or Relay?

Those advanced topologies (Cluster, Sentinel, Replicated master/replica, and the
Relay/Predis clients) ship in the separate **Flexa Cache Pro** add-on. The free 
plugin covers a single Redis server, which suits the large majority of sites.

## Àwọn àgbéyẹ̀wò

Kò sí àwọn àgbéyẹ̀wò fún plugin yìí.

## Àwọn Olùkópa & Olùgbéejáde

“Flexa Cache” jẹ́ ètò ìṣàmúlò orísun ṣíṣí sílẹ̀. Àwọn ènìyàn wọ̀nyí ti ṣe ìkópa 
sí plugin yìí.

Àwọn Olùkópa

 *   [ FlexaTech ](https://profiles.wordpress.org/flexatech/)

[Túmọ̀ “Flexa Cache” sí èdè rẹ.](https://translate.wordpress.org/projects/wp-plugins/flexa-cache)

### Ṣe o nífẹ̀ẹ́ sí ìdàgbàsókè?

[Ṣàwárí koodu](https://plugins.trac.wordpress.org/browser/flexa-cache/), ṣàyẹ̀wò
[ibi ìpamọ́ SVN](https://plugins.svn.wordpress.org/flexa-cache/), tàbí ṣe àgbékalẹ̀
sí [àkọsílẹ̀ ìdàgbàsókè](https://plugins.trac.wordpress.org/log/flexa-cache/) nípasẹ̀
[RSS](https://plugins.trac.wordpress.org/log/flexa-cache/?limit=100&mode=stop_on_copy&format=rss).

## Àkọsílẹ̀ àwọn àyípadà

#### 1.1.1

 * Fix: Delay JS / Render-Blocking JS / Combine JS no longer break scripts that 
   carry inline code. A script with `wp_add_inline_script()` before/after data (
   most visibly WordPress coreÌtumọ̀ Yorùbá: ’s `wp-i18n`, whose after-script calls`
   wp.i18n.setLocaleData()`) is now left un-delayed, un-deferred, and un-combined,
   because that inline companion runs at parse time and would otherwise throw “wp
   is not defined”. The Combine JS path recovers the handle from the tagÌtumọ̀ Yorùbá:’
   s `id` attribute so it can protect the same scripts even though it operates on
   the rendered buffer. This also resolves knock-on breakage of scripts that depend
   on those globals.
 * Fix: the admin-bar “Flexa Cache” submenu no longer stays hidden on hover when
   JS optimization is enabled. The WordPress toolbar script depends on `hoverintent-
   js`; Combine JS / Delay JS / Render-Blocking now auto-exclude it alongside `admin-
   bar` (it was previously left in), so the submenu opens reliably.
 * Compatibility: tested and confirmed working with WordPress 7.1. No other code
   changes were required — the admin app loads only on the pluginÌtumọ̀ Yorùbá: ’
   s own settings screen (not the iframed block editor) and uses no `@wordpress/
   components`, jQuery UI, or block-editor assets affected by 7.1.

#### 1.1.0

 * New: **Object Cache (Redis)** module — a persistent object cache installed as
   an `object-cache.php` drop-in (in-memory L1 + Redis L2). Caches options, transients,
   and meta/query data across requests.
 * New: admin Object Cache tab — status banner, “Test & save connection” (writes`
   wp-config.php`, secrets never in the database), metrics, groups table, and flush
   controls.
 * New: crash-safe resilience — in-request degrade to in-memory, cross-request circuit
   breaker with cooldown, `on_error` policy, and a Site Health check. Redis outages
   never cause a white screen.
 * New: serializers (PHP/igbinary/JSON/msgpack) and compression (LZ4/Zstd/LZF), 
   key prefetch, alloptions splitting, and per-`*-queries` TTL.
 * New: observability — hit-ratio/ops/memory analytics, per-group key table, Query
   Monitor panel, request footnote, and a vendor-neutral `flexa_cache/object_cache/
   trace` hook.
 * New: WP-CLI `wp flexa-cache oc` (`enable`, `disable`, `status`, `flush`, `diagnostics`,`
   analytics`, `watch`, `groups`, `slowlog`, `cli`, `reset`), and REST endpoints
   under `/flexa-cache/v1/object-cache`.
 * New: multisite support with per-site and network flush scopes; TLS, unix socket,
   and ACL (username) connections.
 * Note: advanced Redis topologies (Cluster, Sentinel, Replicated, Relay/Predis)
   are provided by the separate **Flexa Cache Pro** add-on.

#### 1.0.3

 * Cleanup: removed the unused `/ping` starter REST endpoint left over from the 
   plugin scaffold.
 * Docs: the readme source-code section now documents the build tooling (`npm install``
   npm run build`) alongside the public repository link.

#### 1.0.2

 * Fix: CSS minify (aggressive HTML minify and CSS combine) no longer strips whitespace
   around `:`, which previously fused descendant combinators into compound selectors
   before a pseudo-class (`:root :where(…)`  `:root:where(…)`) and silently dropped
   WordPress global-styles rules — most visibly Gutenberg button styles. Whitespace
   around `{ } ; ,` is still collapsed.

#### 1.0.1

 * Security: cache purge, stats, and preload REST endpoints now require the `manage_options`
   capability instead of `upload_files`, so only administrators can trigger site-
   wide cache operations.
 * Hardening: cached widget output is now passed through `wp_kses_post()` before
   it is echoed.
 * Cleanup: removed a dead pre-WordPress-5.7 raw `<script>` fallback in the delay-
   JS loader; the core `wp_print_inline_script_tag()` helper is now always used.
 * CSS/JS combine and minify now rewrite the URL of the stylesheet/script tag WordPress
   already enqueued and printed, instead of emitting a freshly-built tag — preserving
   the original tag attributes.

#### 1.0.0

 * Initial release: page cache drop-in, 23 optimization toggles, WP-CLI, REST API,
   cache preloader, widget cache, mobile theme cache, i18n-ready.

## Àkójọpọ̀ Meta

 *  Ẹ̀yà **1.1.1**
 *  Ìgbàgbọ́hùn tó kẹ́yìn **ọ̀sẹ̀ 1 sẹ́yìn**
 *  Àwọn ìgbéwọlẹ̀ tó ṣiṣẹ́ **Tó kéré sí 10**
 *  Ẹ̀yà WordPress ** 5.9 tàbí ju bẹ́ẹ̀ lọ **
 *  Dánwò dé **7.1**
 *  Ẹ̀yà PHP ** 8.2 tàbí ju bẹ́ẹ̀ lọ **
 *  Èdè
 * [English (US)](https://wordpress.org/plugins/flexa-cache/)
 * Àwọn àmì
 * [cache](https://yor.wordpress.org/plugins/tags/cache/)[object cache](https://yor.wordpress.org/plugins/tags/object-cache/)
   [page cache](https://yor.wordpress.org/plugins/tags/page-cache/)[performance](https://yor.wordpress.org/plugins/tags/performance/)
   [redis](https://yor.wordpress.org/plugins/tags/redis/)
 *  [Ìwòye Tó Péye](https://yor.wordpress.org/plugins/flexa-cache/advanced/)

## Àwọn ìbò

Kò sí ìwádìí tí a tíì fi ránṣẹ́.

[Your review](https://wordpress.org/support/plugin/flexa-cache/reviews/#new-post)

[Wo gbogbo àwọn àgbéyẹ̀wò](https://wordpress.org/support/plugin/flexa-cache/reviews/)

## Àwọn Olùkópa

 *   [ FlexaTech ](https://profiles.wordpress.org/flexatech/)

## Ìrànlọ́wọ́

Nǹkan wà tí o fẹ́ sọ? Ṣé o nílò ìrànlọ́wọ́?

 [Wo àpéjọ ìrànlọ́wọ́](https://wordpress.org/support/plugin/flexa-cache/)