Skip to content

Managing page content

In the admin: Page content — the screen this page documents (opens in the running app).

What/why: Content & media — what this screen manages and why it exists.

Looking for the whole content surface? The content inventory (/admin/content) lists every code-routed slot and CMS page with its publish state, and links here to edit each slot's copy.

Is this legacy? No. After the pages CMS (#673–#675) landed, this slot editor was deliberately retained as the mechanism for editable copy embedded in code-owned routes (like the home hero) — a role CMS pages don't fill. See the content-model reference for how the two fit into one model.

Purpose: edit the non-entity page copy — the splash headline and body first — as a draft, then publish it live, with no rebuild or deploy.

When to use

  • Reworking the home-page hero headline or supporting copy.
  • Drafting a wording change without changing the live site, then publishing when it's ready.
  • Reverting a slot to its built-in default (leave it unpublished).

Prerequisites

  • Admin access with the edit_data capability (any data_editor or admin role).

Steps

  1. Open Admin → Content & media → Page content (/admin/page-content). Each editable slot (e.g. the home hero headline and body) shows its state: Published (a live override is set) or Using default (no override), plus Draft pending when an unpublished draft exists.
  2. Edit the Draft copy field. Click Save draft — this stores your wording but does not change the live site; visitors still see the published value (or the built-in default).
  3. When the draft reads the way you want, click Publish. The draft is promoted to the published value and goes live on the next page load. Live now shows what visitors currently see.
  4. To revert to the built-in default, there is nothing to publish — an unset slot always falls back to the default automatically.

Notes

  • Drafts are never shown to visitors — only publishing changes the live page (#550).
  • Only registered, non-entity slots are editable here. Product attributes, factors, media, and Drupal-sourced fields are entity content and are never reachable through this editor (#551) — adding a new slot is a registry entry in src/lib/page-content.
  • Every save and publish is audited (entity page_content).
  • The slot model + store are documented in code at src/lib/page-content (registry) and src/lib/server/page-content.ts (store).