Een hook is een type functie dat wordt gebruikt in het Drupal CMS. Het maakt het mogelijk dat modules communiceren met de kerncode van Drupal of met andere modules, zonder dat de originele broncode hoeft te worden gewijzigd. Hooks zijn een integraal onderdeel van de Drupal-architectuur en worden gebruikt om de functionaliteit van Drupal uit te breiden en aan te passen.
Hooks zijn geschreven in PHP en worden opgeslagen in de modules directory van de Drupal-installatie. Wanneer een module is ingeschakeld, zoekt Drupal naar eventuele hooks die in de module zijn gedefinieerd en voert deze uit. Hierdoor kunnen modules communiceren met de kerncode van Drupal, of met andere modules, zonder dat de originele broncode hoeft te worden gewijzigd.
Hooks zijn onderverdeeld in twee typen: Acties en Filters . Acties zijn functies die worden geactiveerd wanneer bepaalde gebeurtenissen plaatsvinden, zoals wanneer een gebruiker inlogt of wanneer een knooppunt wordt opgeslagen. Filters zijn functies die gegevens wijzigen voordat deze worden weergegeven of opgeslagen. Een filter kan bijvoorbeeld worden gebruikt om de uitvoer van een knooppunt te wijzigen voordat deze op de pagina wordt weergegeven.
Hooks vormen een belangrijk onderdeel van de Drupal-architectuur en worden gebruikt om de functionaliteit van Drupal uit te breiden en aan te passen. Door hooks te gebruiken kunnen ontwikkelaars krachtige en flexibele modules maken die communiceren met de kerncode van Drupal of met andere modules, zonder de originele broncode te hoeven wijzigen.