Naar de inhoud
Vitrine, naar de homepage
Menu

handleiding

Content op schijf

Elke pagina is één bestand. Dat klinkt simpel, en dat is het ook — maar het heeft nogal wat gevolgen.

Een entry is een bestand

De pagina die je nu leest staat in content/collections/pages/handleiding-content.md. Bovenin staat YAML met de velden, daaronder mag vrije tekst staan.

Omdat het gewone bestanden zijn, werken de gereedschappen die je al hebt. Zoeken doe je met grep, een wijziging terugdraaien met git revert, en een pagina dupliceren door het bestand te kopiëren en het id te vervangen.

Collecties

Een collectie groepeert entries die dezelfde vorm hebben. Deze site heeft er twee: Pagina's en Blog. In de collectie leg je ook vast hoe het adres wordt opgebouwd.

yaml

De collectie Blog

Zes regels bepalen het adres, de sortering, het gedrag rond datums en welke taxonomie eraan hangt.

content/collections/blog.yaml

yaml

title: Blog
route: 'blog/{slug}'
template: blog/show
sort_by: date
sort_dir: desc
date: true
date_behavior:
  past: public
  future: private
taxonomies:
  - topics

Vooruit plannen werkt vanzelf

Door date_behavior.future: private verschijnt een bericht met een datum in de toekomst pas als die datum er is. Je hoeft er geen cronjob voor te draaien.

Vragen over de opslag

Wordt het niet traag met duizenden pagina’s?

De Stache leest de bestanden één keer en houdt daarna een index bij. Met static caching erbovenop komt een bezoeker meestal helemaal niet bij de content-laag.

Wat als twee redacteuren tegelijk opslaan?

De laatste opslag wint, net als in een map met bestanden. Voor redactie met meerdere mensen tegelijk zijn revisies er om te zien wat er veranderd is.

Kan ik de content in een database zetten?

Dat is niet waar dit CMS voor gemaakt is. De bestanden zijn de waarheid; alles eromheen is een cache die je mag weggooien.