Replace posts/001/slug nesting with issue taxonomy
Use Hugo's `issue = "issues"` taxonomy so each post carries
`issues: ["01"]` in frontmatter. Issue pages live at /issues/01/
with a dedicated _index.md holding title, season, and description.
The /issues/ archive page uses data/issues.json for forthcoming
entries that have no posts yet.
Layouts:
- layouts/issues/list.html → plate grid for a single issue term
- layouts/issues/terms.html → issues archive (new)
- _default/single.html → scopes grid to issue term page, back-link to /issues/01/
- baseof.html → ribbon links to /issues/01/, JSON island includes issue field
- partials/header.html → Issues link → /issues/
JS:
- lbClose() navigates to /issues/${issueId}/ on a single-post page
- lightbox meta panel shows linked Issue fact
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,13 +1,20 @@
|
||||
{{ define "main" }}
|
||||
{{/* Individual post page — grid renders in background, JS opens lightbox for this slug */}}
|
||||
{{- $issue := index (.Params.issues | default (slice "01")) 0 }}
|
||||
{{- $issueURL := printf "/issues/%s/" $issue }}
|
||||
<section class="hero" id="hero">
|
||||
<div class="hero__eyebrow">{{ index (.Params.categories | default (slice "Plate")) 0 }}</div>
|
||||
<div class="hero__eyebrow">
|
||||
№ {{ $issue }} · {{ index (.Params.categories | default (slice "Plate")) 0 }}
|
||||
</div>
|
||||
<h1 class="hero__title"><em>{{ .Title }}</em></h1>
|
||||
<p class="hero__lede">{{ .Params.description }} <a href="/" style="border-bottom:1px solid currentColor">Return to archive →</a></p>
|
||||
<p class="hero__lede">
|
||||
{{ .Params.description }}
|
||||
<a href="{{ $issueURL }}" style="border-bottom:1px solid currentColor">Return to issue →</a>
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="grid" id="grid" data-density="default">
|
||||
{{- $posts := where .Site.RegularPages "Section" "posts" }}
|
||||
{{- $termPage := $.Site.GetPage (printf "/issues/%s" $issue) }}
|
||||
{{- $posts := cond (ne $termPage nil) $termPage.Pages .Site.RegularPages }}
|
||||
{{- range $i, $p := $posts }}
|
||||
{{- $img := $p.Resources.GetMatch "*.png" }}
|
||||
<a class="card"
|
||||
|
||||
Reference in New Issue
Block a user