Hinzufügen von Regionen zum Theme
Das Hinzufügen von Regionen zum Theme erfordert:
- Das Hinzufügen von Regionsmetadaten zur Datei THEMENAME.info.yml.
- Die Bearbeitung der Datei page.html.twig und das Ausgeben der neuen Regionen.
Hinweis: Wenn Sie in Ihrem Theme eine oder mehrere Regionen deklarieren, werden alle Standardregionen nicht mehr angewendet, und Sie sind dafür verantwortlich, alle gewünschten Regionen zu deklarieren.
Blöcke, die sich in Regionen befanden, die Sie nicht mehr definiert haben, werden jetzt deaktiviert – besonders wenn Sie die THEMENAME.info.yml bearbeiten und den Cache mit drush cr leeren, sehen Sie für jeden Block eine Meldung wie diese:
Der Block themename_breadcrumbs wurde einer ungültigen Region breadcrumb zugewiesen und wurde deaktiviert.
Wenn Sie /admin/structure/block besuchen, werden alle deaktivierten Blöcke im oberen Bereich mit dem Indikator (deaktiviert) aufgeführt. Sie können sie entweder per Drag & Drop neu zuweisen oder das Dropdown-Menü „Region“ verwenden, um die Blöcke neu zuzuweisen oder nicht mehr benötigte Blöcke zu löschen.
Stellen Sie sicher, dass Sie die Regionen page_top und page_bottom beibehalten. Diese sind „versteckte“ Bereiche, die für Markup ganz oben und unten auf der Seite verwendet werden, wie zum Beispiel Analytics oder die Admin-Toolbar. Sie müssen diese nicht in der THEMENAME.info.yml auflisten, löschen Sie sie einfach nicht aus dem Template html.html.twig. Module können sich auf deren Existenz verlassen.
Hinzufügen von Regionen in Ihre Info-Datei
Beginnen Sie mit der Deklaration neuer Regionen in der Datei THEMENAME.info.yml. Regionen werden als Unterelemente des Schlüssels regions folgendermaßen definiert:
regions: header: 'Header' content: 'Content' footer: 'Footer'
Regionenschlüssel müssen alphanumerisch sein und können Unterstriche (_) enthalten. Der Schlüssel muss mit einem Buchstaben beginnen. Der Schlüssel ist der Maschinenname (der im Code verwendet wird), und der Wert ist eine lesbare Bezeichnung, die in der Admin-Oberfläche angezeigt wird.
Hinzufügen von Regionen zu Ihren Templates
Damit Regionen den darin platzierten Inhalt anzeigen, müssen Sie sicherstellen, dass Ihre neuen Regionen auch in Ihrer page.html.twig-Datei hinzugefügt sind. Regionen werden als Twig-Variablen dargestellt, deren Namen den Schlüsseln aus der THEMENAME.info.yml mit dem Präfix „page.“ entsprechen.
Beispiel:
header: 'Header'
... wird zu:
{{ page.header }}
Sie verhalten sich wie jede andere Twig-Variable und können mit beliebigem Markup umgeben werden, passend zu Ihrem Anwendungsfall.
(Die Syntax für versteckte Regionen ist standardmäßig anders, siehe unten.)
Standardregionen
Siehe die Dokumentation zu page.html.twig für die Liste der Standardregionen.
- page.header
- page.primary_menu
- page.secondary_menu
- page.highlighted
- page.help (dynamischer Hilfetext, hauptsächlich für Admin-Seiten)
- page.content (Hauptinhalt der aktuellen Seite)
- page.sidebar_first
- page.sidebar_second
- page.footer
- page.breadcrumb
Wenn Ihr Theme keine Regionen deklariert, verwendet Drupal diesen Satz an Standardwerten.
Diese Regionen entsprechen dem, was die Standarddatei core/modules/system/templates/page.html.twig erwartet, sowie den zwei versteckten Regionen page_top und page_bottom – Sie müssen diese letzten beiden nicht deklarieren, wenn Sie die Standardwerte überschreiben. Allerdings müssen die Twig-Variablen {{ page_top }} und {{ page_bottom }} im Template html.html.twig erhalten bleiben.
Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.