Artikel ·
Folge 004: Seiten sind nur Dateien und trotzdem schlau strukturiert
Was in der CMS-Config steckt, warum Unterseiten wie Ordner funktionieren und SEO lieber einmal definiert wird statt zwanzigmal copy-paste.
Keine Datenbank, kein WordPress-Monster: Pages sind normale Markdown-Dateien unter src/content/pages/. Collections sind die Typen. „Pages“, „Articles“, später mehr.
Was config.yml macht
In public/admin/config.yml steht in YAML (strukturierte Textdatei), was Redakteure im CMS sehen: Titel, Beschreibung, Body, …
Früher hing das Menü an jeder Seite, bei hautuu gibt’s eine eigene menus-Collection. Für Pages kam hinzu:
parent: Verweis auf eine übergeordnete Seite → URL wie/ueber-uns/preise/statt flach/preise/.
Eine Seite angucken
src/content/pages/index/index.md = Startseite.
- Oben Frontmatter = ausgefüllte Felder.
- Darunter Body = Markdown.
Du speicherst → Datei ändert sich → beim Build wird HTML. In der IDE-Preview siehst du ungefähr, was GitHub auch rendert.
Articles & Tags (kurz)
Articles kriegen Tags wie Hashtags, keine Kategorien-Wüste. Verwandte Artikel per Extra-Feld wäre möglich; Tags reichen oft.
SEO: einmal definieren
Statt überall lose Felder zu kopieren: ein SEO-Objekt für mehrere Collections (DRY = don’t repeat yourself).
Praktisch:
- index / noindex: Impressum & Datenschutz oft noindex, damit Google nicht den Legal-Text als Hauptinhalt feiert.
- Tab-Titel und Meta-Beschreibung getrennt vom sichtbaren Seitentitel.
Backlog-Idee aus dem Video: optionales Inhaltsverzeichnis oben bei langen Texten.
Editor heute, CMS morgen
Jetzt tippst du Markdown oder lässt Cursor schreiben, später Sveltia unter /admin/. Gleiche Felder, gleiche Dateien, gleiche Git-History.