PATTERN Cited by 1 source
Static content pages via CMS over hand-coded templates¶
Pattern¶
For static and semi-static pages (awareness campaigns, category inspiration pages, informational pages like "About Sustainability"), author and publish them through a CMS (ideally a headless one) rather than as hand-coded HTML/CSS templates checked into the application codebase.
The failure mode this replaces¶
In a hand-coded-template shape:
- Each new page is a ticket → branch → PR → deploy engineering project. Non-technical stakeholders cannot ship content without engineering involvement.
- Even small content changes (copy edits, image swaps) go through the engineering release train.
- Localisation is implemented per-page with custom conditional rendering or parallel template files per language, which scales poorly across 25-market operations.
- Page-level analytics, A/B testing, and design-system compliance are each solved per-template rather than as platform capabilities.
What the pattern delivers¶
- Non-technical stakeholders own the workflow end-to-end. Page creation, content upload, and publish happen in the CMS, not in Git.
- Engineering involvement becomes a one-time cost per content type. Introducing a new module (a new kind of block on a page) requires engineering; using it on hundreds of pages afterward does not.
- Localisation is a CMS concern (multi-language entry-types, per-market variants) rather than a codebase concern.
- Platform capabilities apply uniformly — design system, A/B testing, performance gates, observability, consent, monitoring all live in the delivery runtime, not per-template.
Canonical wiki instance — Zalando Landing Pages¶
(Source: sources/2022-09-28-zalando-more-editorial-content-please)
Zalando's Landing Pages stack is the canonical wiki instance: campaign/sustainability/category-inspiration pages authored in Contentful and delivered by the Interface Framework runtime. Quantified impact: time-to-go-live 2 days → 4 hours; a previously-required 2-week lead time removed entirely; +82% YoY publication volume.
When not to apply¶
- Pages that are genuinely dynamic (pricing, recommendations, live inventory) are not a CMS workload — they belong in the application's regular data path.
- For small single-surface sites where engineering and content-authoring are the same people, a hand-coded template can be simpler than introducing a CMS.