feat: CMS-editable nav, categories taxonomy, site settings
- Move top nav from hugo.toml menus to data/nav.yml (CMS-editable) - Add categories taxonomy alongside tags - Add Decap CMS settings collection for nav management - Add categories field to articles and essays in CMS config Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
dd810f5a63
commit
8ab5787e68
4 changed files with 50 additions and 32 deletions
|
|
@ -17,7 +17,26 @@ slug:
|
|||
encoding: ascii
|
||||
clean_accents: true
|
||||
|
||||
# ── Site settings (file-based collections) ───────────────────────────
|
||||
|
||||
collections:
|
||||
- name: settings
|
||||
label: Settings
|
||||
files:
|
||||
- name: nav
|
||||
label: Navigation
|
||||
file: data/nav.yml
|
||||
fields:
|
||||
- label: Navigation Links
|
||||
name: items
|
||||
widget: list
|
||||
fields:
|
||||
- { label: Name, name: name, widget: string }
|
||||
- { label: URL, name: url, widget: string }
|
||||
- { label: Weight, name: weight, widget: number, hint: "Sort order (lower = first)" }
|
||||
|
||||
# ── Content collections ──────────────────────────────────────────────
|
||||
|
||||
- name: docs-getting-started
|
||||
label: "Docs: Getting Started"
|
||||
folder: content/docs/getting-started
|
||||
|
|
@ -66,6 +85,7 @@ collections:
|
|||
- { label: Title, name: title, widget: string }
|
||||
- { label: Description, name: description, widget: string, required: false }
|
||||
- { label: Date, name: date, widget: datetime, format: "YYYY-MM-DD" }
|
||||
- { label: Categories, name: categories, widget: list, required: false, hint: "e.g. framework, tutorial, deep-dive" }
|
||||
- { label: Tags, name: tags, widget: list, required: false }
|
||||
- { label: AI Disclosure, name: ai-disclosure, widget: select, options: ["generated", "assisted", "none"], default: "assisted" }
|
||||
- { label: AI Model, name: ai-model, widget: string, required: false }
|
||||
|
|
@ -88,6 +108,7 @@ collections:
|
|||
- { label: Date, name: date, widget: datetime, format: "YYYY-MM-DD" }
|
||||
- { label: Tags, name: tags, widget: list, required: false }
|
||||
- { label: Draft, name: draft, widget: boolean, default: true }
|
||||
- { label: Categories, name: categories, widget: list, required: false }
|
||||
- { label: AI Disclosure, name: ai-disclosure, widget: select, options: ["generated", "assisted", "none"], default: "assisted" }
|
||||
- { label: AI Model, name: ai-model, widget: string, required: false }
|
||||
- { label: AI Provider, name: ai-provider, widget: string, required: false, default: "Anthropic" }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue