diff --git a/CHANGELOG.md b/CHANGELOG.md index 735150c..9c803e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- `templates/front-page.html` — the curated homepage: hero, "Explore by topic," "Latest news," dashboard-CTA banner, "Special Projects," provincial coverage + newsletter, and "Perspectives" sections, each a structural placeholder pending pattern-authoring work; no `core/query` block, `header`/`trust-bar`/`footer` parts (see LS-1718). +- `templates/search.html` — reuses the home/archive card-grid structure with an inherited `core/query` block bound to the search query and a `core/query-title` showing the search term, no topic-filter pills (see LS-1718). +- `templates/404.html` — a calm "Page not found" message plus a `core/search` form, no post query loop (see LS-1718). - `templates/single.html` — post content (category, title, byline/date, featured image, content) plus the shared `sidebar-editorial` template part and a single-post-specific "Explore topics" module — a `core/terms-query` scoped via `termQuery.include` to the 7 real categories matching the design's curated topic list (Latest, HIV/AIDS, TB, NHI, Access to Medicines, Healthcare system, NCDs), per Zared's PR #6 review feedback, rather than a static hand-typed list — a `[Republish pattern placeholder]` (the CC-licence republish box from the design, deferred to the patterns phase per `design.md`'s stated non-goals), previous/next post navigation, and a "Recent stories" query using the Advanced Query Loop plugin's "exclude current post" option, so the post being viewed never appears in its own recent-stories list (see LS-1717). No custom category matching — this is a plain latest-posts query, per Zared's PR #6 review feedback. - `templates/page.html` — prose content plus the shared `sidebar-editorial` template part, with no post-meta elements (see LS-1717). - `templates/home.html` — the site's Posts Page: page header (title + search), a real `core/categories` topic-filter list, an inherited/paginated `core/query` post grid, `header`/`trust-bar`/`footer` template parts (see LS-1716). Each card is a `[Blog Card pattern placeholder]`, pending the design-system pattern Zared confirmed will be authored in the upcoming patterns phase, per his review feedback on PR #5. diff --git a/openspec/changes/spotlight-template-hierarchy/tasks.md b/openspec/changes/spotlight-template-hierarchy/tasks.md index 4528cb1..f1cd76c 100644 --- a/openspec/changes/spotlight-template-hierarchy/tasks.md +++ b/openspec/changes/spotlight-template-hierarchy/tasks.md @@ -34,14 +34,14 @@ ## 4. LS-1718 — system templates and edge-case structure (branch: `feat/ls-1718-system-templates-and-edge-case-structure`, base: `feat/ls-1715-shared-template-parts-and-wrappers`) -- [ ] 4.1 Create `templates/front-page.html`: compose pattern insertion-point placeholders for hero, topic grid, latest-news row, dashboard CTA, special projects, provincial coverage + newsletter, and perspectives, with `header`, `trust-bar`, and `footer` template parts and no `core/query` block (bundled here rather than under 1716/1717, since it predates the dev-ready designs and doesn't map cleanly to either of those sub-issue titles) -- [ ] 4.2 Create `templates/search.html`: reuse the home/archive card-grid structure with a `core/query` block bound to the search query, no topic-filter pills, with `header`, `trust-bar`, and `footer` template parts -- [ ] 4.3 Create `templates/404.html`: calm message plus a search form element, no post query loop, with `header`, `trust-bar`, and `footer` template parts -- [ ] 4.4 Confirm `templates/index.html` is left unmodified as the fallback-of-last-resort -- [ ] 4.5 Add any needed `theme.json` `customTemplates` entry for `front-page`/`search`/`404` if an editor-facing label/description is warranted -- [ ] 4.6 Run `npm run schema:validate` and `npm run theme:validate` -- [ ] 4.7 Verify in the Site Editor: `front-page.html` renders for the site root, `search.html`/`404.html` render without fatal errors -- [ ] 4.8 Update `CHANGELOG.md` under `## [Unreleased]` +- [x] 4.1 Create `templates/front-page.html`: compose pattern insertion-point placeholders for hero, topic grid, latest-news row, dashboard CTA, special projects, provincial coverage + newsletter, and perspectives, with `header`, `trust-bar`, and `footer` template parts and no `core/query` block (bundled here rather than under 1716/1717, since it predates the dev-ready designs and doesn't map cleanly to either of those sub-issue titles) +- [x] 4.2 Create `templates/search.html`: reuse the home/archive card-grid structure with a `core/query` block bound to the search query, no topic-filter pills, with `header`, `trust-bar`, and `footer` template parts +- [x] 4.3 Create `templates/404.html`: calm message plus a search form element, no post query loop, with `header`, `trust-bar`, and `footer` template parts +- [x] 4.4 Confirm `templates/index.html` is left unmodified as the fallback-of-last-resort +- [x] 4.5 Add any needed `theme.json` `customTemplates` entry for `front-page`/`search`/`404` if an editor-facing label/description is warranted (evaluated: not needed — standard hierarchy slugs get sensible default editor labels automatically) +- [x] 4.6 Run `npm run schema:validate` and `npm run theme:validate` +- [x] 4.7 Verify in the Site Editor: `front-page.html` renders for the site root, `search.html`/`404.html` render without fatal errors +- [x] 4.8 Update `CHANGELOG.md` under `## [Unreleased]` - [ ] 4.9 Open PR against `feat/ls-1715-shared-template-parts-and-wrappers` (note: depends on that PR, do not merge first) — "Closes LS-1718" ## 5. After LS-1715 merges to `develop` diff --git a/templates/404.html b/templates/404.html new file mode 100644 index 0000000..09113c8 --- /dev/null +++ b/templates/404.html @@ -0,0 +1,31 @@ + + + +
+ +
+ +

Page not found

+ + + +

We couldn't find the page you were looking for. Try searching for what you need, or head back to our homepage.

+ + + + + + + +
+ +
+ + + + + diff --git a/templates/front-page.html b/templates/front-page.html new file mode 100644 index 0000000..cb30ed5 --- /dev/null +++ b/templates/front-page.html @@ -0,0 +1,109 @@ + + + +
+ +
+ +

In the Spotlight

+ + + +

[Featured-story hero pattern placeholder]

+ +
+ + + +
+ +

Explore by topic

+ + + +

[Topic-grid pattern placeholder]

+ +
+ + + +
+ +

Latest news

+ + + +

[Latest-news card-row pattern placeholder]

+ +
+ + + +
+ +

Interactive Data Dashboards

+ + + +

[Dashboard-CTA banner pattern placeholder]

+ +
+ + + +
+ +

Special Projects

+ + + +

[Special-projects card-row pattern placeholder]

+ +
+ + + +
+ +
+ +

Provincial coverage

+ + + +

[Provincial-map pattern placeholder]

+ +
+ + + +
+ +

Read our latest newsletters

+ + + +

[Newsletter-signup pattern placeholder]

+ +
+ +
+ + + +
+ +

Perspectives

+ + + +

[Perspectives card-row pattern placeholder]

+ +
+ +
+ + + + + diff --git a/templates/search.html b/templates/search.html new file mode 100644 index 0000000..b6f35a6 --- /dev/null +++ b/templates/search.html @@ -0,0 +1,57 @@ + + + +
+ +
+ + + +
+ + + +
+ + +
+ + + + + + + + + +
+ + + +
+ +
+ + + + + +

No results found.

+ + + + + + + + + + +
+ +
+ + + + +