Eine Layout-Box ist ein Stück eigener Inhalt, den das Plugin quartz-layout-box an eine Stelle des Seitenlayouts setzt — die Wortmarke oben, die Box „Über dieses Handbuch“ links, die Box „Weiterlesen“ unter dem Text. Diese Vorlage hat sieben davon; was jede tut, steht in 5.5 – Layout-Boxen. Hier geht es darum, wie eine einzelne Seite eine davon anders haben kann.
Diese Seite steuert zwei davon über ihr eigenes Frontmatter:
---
layoutBoxNote: false
layoutBoxCta:
html: "<p>Ein anderer Text, nur auf dieser Seite.</p>"
---Was man sehen sollte: Die Box „Über dieses Handbuch“ in der linken Spalte fehlt hier — auf allen anderen Seiten ist sie da. Und die Box unter diesem Text zeigt einen anderen Inhalt als sonst.
Die drei Formen
| Im Frontmatter | Wirkung |
|---|---|
layoutBoxNote: false | Box auf dieser Seite ausblenden |
layoutBoxNote: andere.md | anderen Schnipsel aus demselben Ordner laden |
layoutBoxNote: {html: "…"} | eigenen Inhalt setzen; auch {file: "…"} und {hidden: true} |
In der ausführlichen Form nimmt der Schlüssel sechs Felder: hidden, file, html, title,
collapsible und collapsed. Eine Seite darf ihre Box also auch umbenennen oder zuklappen, nicht
nur umfüllen.
Die sechs Schlüssel dieser Vorlage
| Schlüssel | Ort | Was die Box ist |
|---|---|---|
layoutBoxMark | Kopfbereich | die Wortmarke, ein Bild je Farbschema |
layoutBoxPageName | Kopfbereich | der Kapitelname neben dem Websitenamen |
layoutBoxNote | linke Spalte | „Über dieses Handbuch“, aus einer Markdown-Datei, aufklappbar |
layoutBoxCta | nach dem Inhalt | „Weiterlesen“, mit Platzhaltern |
layoutBoxHint | nach dem Inhalt | ein Hinweis, nur auf schmalen Bildschirmen |
layoutBoxColophon | Fußzeile | die Impressumszeile |
Die siebte Instanz hat keinen Schlüssel: Sie gibt nur ein <style> aus, das den Ordner markiert, in
dem man gerade steht, und es gibt nichts daran, was eine einzelne Seite anders haben wollte.
Warum jede Instanz einen eigenen Schlüssel hat
Ohne frontmatterKey in der Konfiguration würde ein layoutBox: false alle Boxen
gleichzeitig ausschalten. Die Vorlage vergibt deshalb je Instanz einen eigenen Namen — das ist auch
die im Plugin dokumentierte Vorgehensweise für Mehrfachverwendung.
Wann das Frontmatter der richtige Ort ist — und wann nicht
Was für diese eine Seite gilt, gehört hierher. Was für alle Seiten einer Sprache gilt,
gehört in die Konfiguration unter byLang — sonst steht dieselbe Ausnahme in hundert Dateien.
Genau das war hier einmal der Fall: Die englischen Seiten trugen ihre vier Boxen selbst, bis das
Plugin byLang bekam. Siehe Die Instanzen.
Wenn beides zutrifft, gewinnt das Frontmatter. Die Rangfolge ist:
- das Frontmatter dieser Seite
byLangfür die Sprache dieser Seite- die Grundeinstellung des Eintrags
Diese Seite ist die Probe darauf: Ihre Box unter dem Text zeigt in beiden Sprachen den eigenen
Text aus dem Frontmatter, trägt aber die Überschrift, die byLang für die jeweilige Sprache setzt.