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
03/10/2025, by Ivan

Menu

Hooks zijn een van de manieren waarop modules kunnen communiceren met andere modules of met de subsysteem­onderdelen van de Drupal-core. Hooks worden gebruikt voor verschillende taken, waaronder preprocess-variabelen voor templatebestanden (hook_preprocess()), het wijzigen van informatielijsten (hook_tokens_alter(), hook_views_data_alter()) en het manipuleren van formulieren (hook_form_alter()), naast andere zaken. Op deze pagina staan alle hooks die door de core worden aangeboden.

Modules kunnen hun eigen extra hooks definiëren. Bijvoorbeeld, de Flag-module definieert hook_flag_options_alter(), die kan worden gebruikt door modules die de standaardopties van een bestaande vlag willen wijzigen. De meeste modules die hooks definiëren, leveren ook documentatie hierover. Deze documentatie bevindt zich in een *.api.php-bestand.

Hooks worden aangeroepen op verschillende punten in de uitvoeringsstroom, waar Drupal bijdragen zoekt van alle ingeschakelde modules. Bijvoorbeeld, wanneer een gebruiker een helppagina op een Drupal-site bezoekt, geeft Drupal elke module de mogelijkheid documentatie over zichzelf te leveren. Dit gebeurt door alle ingeschakelde modules te scannen op een implementatie van hook_help(). Dat wil zeggen functies met de naam mymodule_help($route_name, \Drupal\Core\Routing\RouteMatchInterface $route_match), waarbij “mymodule” de naam van de module is. Bijvoorbeeld, de help-hook van de Block-module heet block_help(), en de help-hook van de Node-module heet node_help(). Een hook kan parameters doorgeven; de parameters $route_name en $route_match van hook_help stellen de ontwikkelaar in staat te bepalen op welke pagina of pagina’s de helpberichten worden weergegeven.

Een hook kan worden beschouwd als een event listener, in die zin dat een gebeurtenis een actie triggert. Een gebeurtenis in Drupal, zoals het verwijderen van een node, roept de hook “hook_node_delete” aan. Als uw module hook_node_delete implementeert, wordt deze functie uitgevoerd wanneer een node wordt verwijderd. Bijvoorbeeld, uw functie kan het aantal nodes verminderen, dus bij het verwijderen van een node wordt uw functie uitgevoerd en wordt het aantal met 1 verlaagd.

Zie ook het overzicht van module-hooks in de Drupal API-referentie. U wilt misschien ook dit uitstekende artikel lezen, dat uitlegt hoe het Drupal module-/hook-systeem werkt met eenvoudige PHP-constructies en fragmenten.