Clear HTML and JSON caches independently
A POM Theme progressive archive reaches the visitor in two stages:
- The initial HTML document contains the archive shell and first visible content;
- Later
.jsonrequests add more results.
POM Cache stores those stages separately. Clear the layer that actually contains the stale output.
Diagnose by timing
| Symptom | Most likely layer |
|---|---|
| Old title, header, menu, or first archive items appear immediately on page load | HTML |
| Initial page is current, but old cards appear after Load more or scrolling | Progressive JSON |
| Both initial and later content are old | Both origin stores, or an upstream CDN |
| Origin is current but public visitors still see old output | Browser or CDN |
| Logged-in view is current but logged-out view is stale | Shared origin cache or CDN |
Browser developer tools make the distinction visible: inspect the main document request separately from the /pom-json/...json request.
Clear HTML only
Use POM Cache → General → Cache tools → Delete Cache.
This preserves progressive JSON. It is appropriate after:
- a page-template or shell-only change;
- navigation or metadata present only in the initial document;
- an HTML cache diagnostic;
- a content change whose JSON representation is known to be unaffected.
After deletion, request the page directly from the origin and confirm a new static HTML entry appears.
Clear JSON only
Use POM Cache → General → Progressive JSON tools → Delete Progressive JSON Cache.
This preserves HTML. It is appropriate after:
- changing archive item output loaded only in later batches;
- changing progressive batch size or context;
- translation or taxonomy changes affecting JSON;
- a JSON generation or file-validation diagnostic.
Trigger a later batch after the clear, verify generated-cacheable, then repeat it to prove reuse.
Clear both
Use the administration-bar Delete Cache shortcut while viewing the intended site, or run both settings actions.
Clear both after:
- a global template deployment used by shell and cards;
- a post or term change known to appear everywhere when automatic purges are off;
- a route or locale architecture change;
- a full origin freshness reset;
- an uncertain stale-output incident where preserving one store has no operational value.
Both actions are current-site operations. Neither contacts the CDN.
Configure automatic behavior to match
HTML and JSON have independent settings:
| Source event | HTML control | JSON control |
|---|---|---|
| Public post lifecycle and term assignments | Purge HTML on post changes | Purge JSON on post changes |
| Term creation, edit, deletion, and supported metadata | Purge HTML on term changes | Purge JSON on term changes |
| POM Translate string, translation, or slug event | No equivalent translation-only HTML switch | Purge JSON on translation changes |
If translated strings appear in static HTML, use the normal HTML content flow or a manual HTML clear after the translation operation.
Four-layer verification
When stale output is difficult to locate, inspect in this order:
- WordPress source — is the edited post, term, translation, or setting correct?
- Origin HTML — does a direct main-document response show the change?
- Origin JSON — does the exact progressive endpoint show the change?
- Public edge/browser — does the viewer request still reuse an older object?
Clear only after identifying the first layer that is stale. Otherwise a CDN response can make a successful origin clear look ineffective.
Example: renamed product category
A category rename can appear in:
- archive page title in HTML;
- category navigation in HTML;
- split-by-term headings in JSON;
- JSON next URLs;
- CDN copies of all those viewer paths.
If both automatic term switches were enabled, origin HTML and JSON should be cleared. Verify regeneration, then invalidate the CDN paths that actually cache those responses.
Example: later-card design change
If the initial archive renders cards with the same template as progressive batches, the design may be present in both stores. If the shell contains no cards and only later JSON changed, a JSON-only clear is sufficient.
Judge the rendered result, not the source filename changed during development.
For the operational buttons, see Clear caches from the tools screen. For an edge copy, continue with Decide when the CDN must also be invalidated.