Voici une petite explication de ce qu’il est possible de réaliser grâce au système de hook de WordPress.
Ces quelques lignes vous aiderons peut être à voir plus clair en ce qui concerne la notion de hook et les fonctions add_action() et do_action()
Imaginons ce code php dans votre fichier functions.php :
function dire_bonjour() { $phrase = '<p>bonjour!</p>'; echo $phrase; } add_action( 'thierry_action_hook', 'dire_bonjour' ); do_action('thierry_action_hook');
Pour créer un hook perso il suffit de le mentionner dans un do_action() et c’est tout, WordPress saura le gérer.
la fonction do_action( $tag, $arg1 );
Cette fonction appellera toutes les fonctions attachées au hook d’action : $tag ( ici thierry_action_hook , notez que $arg1 est un argument qui n’est en rien obligatoire ). Vous pourrez même passer plusieurs arguments si besoin.
la fonction add_action( );
Ensuite pour donner un intérêt à la chose, créez la fonction voulue (ici : dire_bonjour(); ) et grâce à un add_action( ) vous accrocherez cette fonction à votre hook. Cette fonction permet d’accrocher une fonction à un hook d’action. WordPress exécutera votre fonction lors du hook précisé.
Cette fonction pourrait s’expliquait en la notant comme ceci :
add_action( $hook , $function_to_add , $priority , $number_of_arg );
$hook et $function_to_add sont des variables de type string.
$priority et $number_of_arg sont des variables de type int.
Accrochez plusieurs fonctions à votre Hook
function dire_bonjour() { $phrase = '<p>bonjour!</p>'; echo $phrase; } function remercier($mot1, $mot2) { $phrase = $mot1.' '.$mot2; echo $phrase; } add_action( 'thierry_action_hook', 'dire_bonjour' ); add_action( 'thierry_action_hook', 'remercier', 10, 2 ); //ici 2 correspond au nbr d'arguments de la fonction remercier() do_action('thierry_action_hook', 'Je vous remercie', 'pour votre attention');