logo

Extra Block Types (EBT) - Nieuwe Layout Builder ervaring❗

Extra Block Types (EBT) - gestileerde, aanpasbare bloktypes: Slideshows, Tabs, Cards, Accordions en vele andere. Ingebouwde instellingen voor achtergrond, DOM Box, javascript-plugins. Ervaar vandaag al de toekomst van layout building.

Demo EBT-modules Download EBT-modules

❗Extra Paragraph Types (EPT) - Nieuwe Paragraphs ervaring

Extra Paragraph Types (EPT) - analoge op paragrafen gebaseerde set modules.

Demo EPT-modules Download EPT-modules

Scroll

Regio’s toevoegen aan een thema

03/10/2025, by Ivan

Het toevoegen van regio’s aan een thema vereist:

  • Het toevoegen van regiometadata in het bestand THEMENAME.info.yml.
  • Het bewerken van page.html.twig en het afdrukken van de nieuwe regio’s.

Opmerking: Als je in je thema één of meer regio’s declareert, zelfs maar één, dan worden de standaardregio’s niet langer toegepast. Je bent dan zelf verantwoordelijk voor het definiëren van alle regio’s die je wilt gebruiken.

Alle blokken die zich bevonden in regio’s die niet meer bestaan (omdat je ze niet hebt gedefinieerd) zullen worden uitgeschakeld. Vooral wanneer je THEMENAME.info.yml aanpast en de cache herbouwt met drush cr, zie je een bericht zoals dit voor elk blok:

Het blok themename_breadcrumbs was toegewezen aan een ongeldige regio breadcrumb en is uitgeschakeld.

Als je naar /admin/structure/block gaat, staan alle uitgeschakelde blokken bovenaan de lijst, gemarkeerd als (uitgeschakeld). Je kunt ze opnieuw toewijzen aan een regio via het keuzemenu "Regio" of ze verwijderen als je ze niet meer nodig hebt.

Zorg ervoor dat je de regio’s page_top en page_bottom behoudt. Dit zijn “verborgen” regio’s die worden gebruikt voor markup helemaal bovenaan en onderaan de pagina, zoals analytics of de admin toolbar. Je hoeft ze niet in het bestand THEMENAME.info.yml te vermelden, maar verwijder ze niet uit het sjabloon html.html.twig. Modules kunnen afhankelijk zijn van hun aanwezigheid.

Regio’s toevoegen in je info-bestand

Begin met het declareren van nieuwe regio’s in het bestand THEMENAME.info.yml. Regio’s worden als child keys van regions toegevoegd:

regions:
  header: 'Header'
  content: 'Content'
  footer: 'Footer'

Regiosleutels moeten alfanumeriek zijn en mogen underscores (_) bevatten. Sleutels moeten beginnen met een letter. De sleutel is de machine name (gebruikt in de code), en de waarde is de leesbare naam die wordt getoond in de admininterface.

Regio’s toevoegen aan je sjablonen

Om ervoor te zorgen dat regio’s inhoud weergeven die erin is geplaatst, moet je je nieuwe regio’s toevoegen in page.html.twig. De regio’s worden beschikbaar als Twig-variabelen waarvan de naam overeenkomt met de key in THEMENAME.info.yml, voorafgegaan door page.

Voorbeeld:

header: 'Header'

...wordt:

{{ page.header }}

Ze gedragen zich als elke andere Twig-variabele en kunnen worden omringd met de markup die past bij je gebruikssituatie.

(De syntax voor verborgen regio’s is anders, zie hieronder.)

Standaardregio’s

Zie de documentatie van page.html.twig voor een lijst van standaardregio’s.

  • page.header
  • page.primary_menu
  • page.secondary_menu
  • page.highlighted
  • page.help (dynamische helptekst, vooral voor adminpagina’s)
  • page.content (de hoofdinhoud van de huidige pagina)
  • page.sidebar_first
  • page.sidebar_second
  • page.footer
  • page.breadcrumb

Als je thema geen regio’s declareert, gebruikt Drupal deze standaardset.

Deze regio’s komen overeen met wat verwacht wordt door het standaardbestand core/modules/system/templates/page.html.twig, evenals de twee verborgen regio’s page_top en page_bottom. Je hoeft deze laatste twee niet te declareren wanneer je de standaardinstellingen overschrijft, maar de Twig-variabelen {{ page_top }} en {{ page_bottom }} moeten behouden blijven in html.html.twig.