Estoy tratando de crear un gancho en un plugin de Wordpress que pueda ser utilizado por otros complementos. En primer lugar, ¿esto es posible? También estoy enviando algunos argumentos adicionales, por lo que pueden ser 2 preguntas en una, ya que he tenido problemas para encontrar información definitiva sobre cómo hacerlo.Ganchos personalizados en WordPress a través de complementos
Esto es lo que he probado hasta ahora:
En el plugin que está creando el gancho (lo llaman Plugin 1) añadí:
do_action('plugin1_hook', $customArg1, $customArg2, $customArg3);
en el punto que quiero el gancho para disparar. Luego, en un plugin diferente (Plugin 2), añadí:
add_action('plugin1_hook', 'my_function');
y
function my_function($customArg1, $customArg2, $customArg3) { //my code }
Esto no parece ser la función de disparar, sin embargo. Mi refence para este ha sido el gancho comment_post Wordpress, que se define por Wordpress como:
do_action('comment_post', $comment_ID, $commentdata['comment_approved']);
y estoy usando como:
add_action('comment_post', 'my_comment');
function my_comment($comment_id) { //my code }
El fragmento anterior está funcionando correctamente.
Lo que estoy haciendo es usar un complemento de votación para comentarios y el gancho no se activa hasta que alguien vota un comentario. Todavía me pregunto si el orden podría estar afectando las cosas, supongo que se puede llamar a add_action en cualquier momento y funcionará siempre que do_action se active después. –
Eso es más o menos Ryan :) La solución de John debería funcionar, ya que espera a que todos los complementos se hayan cargado antes de disparar el 'do_action'. – TheDeadMedic