J'essaye de créer un crochet dans un plugin Wordpress qui pourrait être utilisé par d'autres plugins. Tout d'abord, est-ce même possible? J'envoie également des args supplémentaires, donc cela peut être 2 questions en une depuis que j'ai eu du mal à trouver des informations définitives sur la façon de le faire.Crochets personnalisés dans WordPress à travers les plugins
Voici ce que j'ai essayé jusqu'à présent:
Dans le plug-in qui crée le crochet (l'appeler Plugin 1) J'ajouté:
do_action('plugin1_hook', $customArg1, $customArg2, $customArg3);
au point que je veux que le crochet faire feu. Puis, dans un autre plugin (plugin 2), j'ai ajouté: cependant
add_action('plugin1_hook', 'my_function');
et
function my_function($customArg1, $customArg2, $customArg3) { //my code }
Cela ne semble pas être la fonction de tir,. Mon refence pour cela a été le crochet Wordpress comment_post, qui est défini par Wordpress comme:
do_action('comment_post', $comment_ID, $commentdata['comment_approved']);
et je me sers comme:
add_action('comment_post', 'my_comment');
function my_comment($comment_id) { //my code }
L'extrait ci-dessus fonctionne correctement.
Ce que je fais utilise un plugin de vote de commentaire et le crochet ne se déclenche pas jusqu'à ce que quelqu'un vote sur un commentaire. Je me demande toujours si l'ordre pourrait affecter les choses bien que - je suppose que l'add_action peut être appelé à tout moment et fonctionnera aussi longtemps que les feux de do_action après. –
C'est à peu près ça Ryan :) La solution de John devrait fonctionner, car elle attend que tous les plugins soient chargés avant de lancer le 'do_action'. – TheDeadMedic