WP_Hook
Définition : WP_Hook est la classe interne qui gère les callbacks associés aux actions et filtres WordPress. Elle organise leur priorité et leur exécution, et constitue un composant central du système d’extensibilité du Core.
Terminologie
Appellation officielle : WP_Hook
Autres appellations : Moteur de hooks, Hook dispatcher
Comprendre le fonctionnement
Dans le mécanisme des hooks, WordPress conserve des callbacks associés à un nom et à une priorité. WP_Hook contient les structures permettant d’inscrire, d’exécuter ou de retirer ces callbacks. Son fonctionnement explique pourquoi plusieurs extensions peuvent intervenir sur le même événement et pourquoi leur ordre d’exécution influence parfois le résultat final.
Pour développer une extension, on utilise en général les fonctions publiques add_action(), add_filter(), do_action() et apply_filters(), plutôt que de manipuler directement des instances WP_Hook. Une action signale une étape d’exécution ; un filtre transforme une valeur et doit normalement renvoyer la valeur attendue. Les détails de cette distinction seront approfondis au domaine 2.
Exemple concret
Un thème et une extension modifient successivement la valeur d’un filtre selon des priorités définies.
Exemple de code commenté
<?php
// Enregistrement via l’API publique, dans une extension.
add_filter( 'the_title', function ( $titre ) {
return $titre; // Exemple sans transformation : signature du filtre.
}, 10, 1 );
Point technique à retenir
WP_Hook est un moteur interne : privilégier les API publiques d’enregistrement et d’exécution des hooks.
Termes associés
- Hook
- Action
- Filter
- Callback
