Aufbau von src/
Root-Dateien
index.php— Einstiegspunkt; bootet Kirby. Alle Requests werden via.htaccesshierher gerouted..htaccess— Apache Rewrite-Regeln (Pretty URLs).composer.json— definiert Kirby als Dependency.kirby/— der Kirby-Core (NICHT anfassen, wird via Composer aktualisiert).media/— automatisch generierte Thumbnails & Asset-URLs (cache, kann gelöscht werden).
content/ — die Inhalte (Dateibasiert, keine DB)
Jeder Ordner = eine Seite, jede .txt = deren Felder. URL-Struktur entspricht Ordnerstruktur.
home/— Startseite (home.txtenthält die Felder)error/— 404-Seitesite.txt— globale Site-Felder (Titel etc.)- Bilder/PDFs einfach in den Ordner legen → werden zu Page-Files.
site/ — Logik & Darstellung (dein Code lebt hier)
blueprints/— YAML-Definitionen: was im Panel angezeigt wird (Felder, Sections, Layout).pages/article.ymldefiniert z.B. den Seitentyparticle.templates/— PHP-Files, gerendert pro Seitentyp.article.phprendert Seiten mit Templatearticle. Ohne Template →default.php.snippets/— Wiederverwendbare PHP-Fragmente (Header, Footer, Komponenten), via<?= snippet('header') ?>.controllers/(anlegbar) — Logik vor dem Template; gibt Variablen ans Template.models/(anlegbar) — Page-Klassen mit Custom-Methoden.config/(anlegbar) —config.phpfür Routing, Plugins, Optionen.plugins/(anlegbar) — eigene/3rd-party Plugins.accounts/— Panel-User (Login-Daten, generiert).sessions/+cache/— Runtime, ignorierbar.
Verknüpfung Blueprint ↔ Template ↔ Content
Eine Page hat ein Feld template: article in der .txt → Kirby sucht site/blueprints/pages/article.yml fürs Panel und site/templates/article.php zum Rendern.
Typischer Workflow für eine neue Seite „About“
site/blueprints/pages/about.yml— Felder definierensite/templates/about.php— HTML-Output- Im Panel die Seite „about“ anlegen → erzeugt
content/about/about.txt