Skip to main content
Home
Schatzchaeschtli 2026

Main navigation

  • Home
User account menu
  • Log in

Breadcrumb

  1. Home

Regions and Blocks

By PierreAdmin , 23 September 2026

Eine wichtige Basis beim Aufbau von Drupal sind die Regions. Hier die Basics.

Basics

Verwaltet werden die Regions in der [theme-name].info.yml. Falls hier keine Regions eingetragen sind, greifen die Default Regions. 

regions:
  sidebar_first: Left sidebar				
  sidebar_second: Right sidebar
  content: Content
  header: Header
  primary_menu: Primary menu
  secondary_menu: Secondary menu
  footer: Footer
  highlighted: Highlighted			> Für Systemausgaben (z.B. Inhalt wurde gespeichert)
  help: Help 						> Für Hilfemeldungen (idR. Hilfstexte von Modulen etc)
  breadcrumb: Breadcrumb

Die Region highlighted gibt in der Regel Systemmeldungen zurück, wie «Die Inhalte wurden gespeichert», «Cache wurde geleert» usw. Die Region hilfe ist für Hilfstexte vorgesehen. Wird vor allem im Backend für Hilfetexte von Modulen benutzt. In einem Theme selber habe ich diese Region noch nie wissentlich aktiv genutzt.

Die Regions sind erstmal nur Container, in denen Blöcke ausgegeben werden. Auch der Inhaltstyp ist am Ende ein Block, der in der Region 'Content' (oder wie auch immer man die Region benennen will) ausgegeben wird.

Die Platzierung der Regions wird in der page.html.twig Datei definiert.

Vereinfachtes Beispiel:

<div class="layout-container">
  <header>
    {{ page.header }}
  </header>
  {{ page.primary_menu }}
  
  <main>
    <div class="layout-content">
      {{ page.content }}
    </div>
  </main>
  {% if page.footer %}
    <footer>
      {{ page.footer }}
    </footer>
  {% endif %}
</div>

 

Regionen und Blöcke einrichten

Problem beim Themewechsel. WICHTIG!

Beim Wechsel von einem Theme zu einem anderen muss folgender Ablauf immer eingehalten werden. Wird das nicht sauber gemacht, werden Blöcke falschen Regions zugewiesen oder disabled. Grund: Regionen werden in themename.info.yml definiert. Block-Zuweisungen werden in der Datenbank gespeichert – mit Theme-Name + Region-Maschinenname als Schlüssel. Stimmt der Maschinenname nicht mehr überein, landet der Block in der Disabled-Zone.

Der korrekte Ablauf:

  1. Neues Theme installieren aber noch nicht aktivieren
  2. Structure → Block layout → oben das neue Theme im Tab wählen
  3. Blöcke für das neue Theme konfigurieren und speichern
  4. Erst dann das neue Theme als Standard aktivieren
  5. Cache leeren

Wenn Blöcke trotzdem in Disabled landen

  1. Structure → Block layout → Blöcke manuell den richtigen Regionen zuweisen
  2. Save blocks → Cache leeren

Wenn Regionen komplett fehlen oder falsch sind:

  1. Theme deinstallieren → Cache leeren
  2. Theme reinstallieren → Cache leeren
  3. Block layout neu konfigurieren

 

Blöcke aufräumen

Bevor wir Regions definieren, löschen wir im Blocklayout (Structure > Block layout) alle Blöcke die wir nicht brauchen.

Für Modestia sind das z.B.

  • Powerd by Drupal
  • Help
  • User account menu
  • Breadcrumbs

    Page title habe ich nur deaktiviert, damit man sieht wo er ausgegeben würde, aber wir nutzen bei Modestia nicht den page title sondern den Titel aus dem Paragraph.

Regionen definieren

In der [theme-name].info.yml listen wir die benötigten Regions auf. Die Reihenfolge bestimmt die Ausgabe der Regionen im Block-Layout. Macht also Sinn hier schon etwas Logik mitzugeben, auch wenn es auf die Ausgabe auf der Site keinen Einfluss hat. 
WICHTIG: Keine Tabulatoren in .yml verwenden, sondern zwei Leerzeichen!

Beispiel Modestia:

regions:
  header: Header
  primary_menu: Primary menu
  highlighted: Highlighted
  content: Content
  footer: Footer

Speichern und Cache leeren, damit die Block layout aktualisiert wird.

  • region
Theming

Tag Suche

Categories (Taxonomie-Menu)

  • Drupal
    • Module
    • Theming
    • Views
  • Webentwicklung
    • Composer
    • CSS/SCSS
    • Deployment
    • Drush
    • Git
    • HTML
    • JavaScript
    • PHP
    • SSH
    • SVG
    • VS Code
  • Datenbank
    • mySQL
  • Server
    • Apache
    • DNS
    • Domains
    • Plesk
    • SSL/TLS
  • System
    • Mac
    • Unix
    • Windows