Hooks o conectores de WordPress: add_filter y add_action

Home » Blog » Hooks o conectores de WordPress: add_filter y add_action

Los hooks o conectores de WordPress permiten ejecutar funciones en momentos concretos del proceso de WordPress y de este modo modificar su funcionamiento y / o el resultado clásico de ese proceso. Estos conectores son la forma óptima de modificar y ampliar las funcionalidades de WP mediante plugins o el fichero functions.php.

Acciones y filtros

Los conectores se separan en 2 tipos: Acciones y filtros, las acciones se ejecutan mediante eventos de WordPress. Por ejemplo, cuando publicamos una nueva entrada se ejecuta un conector de acción. Y los conectores de filtro se usan para modificar contenido antes de mostrarlo por pantalla, guardar en la base de datos, o llamar a otra función. Por ejemplo, cuando vamos a pintar por pantalla el the_title() de una entrada antes queremos comprobar el número de caracteres del título.

add_filter( 'the_title', ' nombre_funcion' );
function nombre_funcion($var){
//tareas
return $var;
}
//Este ejemplo antes de llamar a la función the_title(), pasa por esta función

Estas funciones pueden tener hasta cuatro parámetros, siendo solo los 2 primeros obligatorios:

add_filter( ‘the_title’, ‘ nombre_funcion’ , prioridad, n_parametros);

  1. El nombre del filtro o acción.
  2. Nombre de la función que se ejecuta.
  3. Prioridad de la misma, imagina que hay 5 plugins llamando al mismo hook?
  4. Y número de argumentos que acepta la función

Además de la diferencia de funcionalidad entre los filtros y acciones, en cuanto a las funciones hay que tener en cuenta que los hooks de acción no requieren variables ni devuelve valores, pero las de filtro si (recuerda que sustituyen el comportamiento de esas variables y hay que devolverlas con los cambios realizados).

add_action('comment_post','email_nuevo_coment');
function email_nuevo_coment(){
wp_mail('[email protected]','nuevo comentario', 'Tienes un nuevo comentario en tu blog')
}

En el ejemplo vemos que cada vez que se publica un nuevo comentario en una entrada, enviamos un mail de notificación a mi correo.

Hooks de filtro más habituales

  • the_content: Se aplica al contenido de una entrada, página, o entradas personalizadas.
  • the_title: Se aplica al título.
  • comment_text: Al texto de los comentarios.
  • wp_title: Al metadato title de la página
  • the_permalink: A la Url.
  • default_content: Establece un contenido por defecto.

Lo mejor es revisar las funciones en función de las necesidades en:

https://developer.wordpress.org/

Hooks de acción más habituales

  • publish_post: Se ejecuta cuando se publica una nueva entrada.
  • create_category: Al crear una categoría.
  • admin_head: al cargar el head del admin.
  • wp_head: al cargar el head del tema. Idóneo para CSS.
  • wp_footer: al cargar el footer del tema. perfecto para JS.
  • admin_menu: Al cargar el menú del administador de WordPress.
  • init: Despúes de cargarse WP pero antes de enviar encabezados. Se suele usar para gestionar envió de información POST o GET.
  • admin_init: Igual que init pero en admin.
  • user_register: Al crear un usuario.
  • add_meta_boxes: Al crear un metabox.
  • widget_init: Se carga al iniciar los widgets.
  • wp_dashboard_setup: En el momento de cargar el escritorio en el administrador.

Lo mejor es revisar las funciones en función de las necesidades en:

https://developer.wordpress.org/reference/

Foto de Iñigo Mezo Alvarez

IÑIGO MEZO ALVAREZ (IMAcreste)


Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Las reseñas son opiniones que las personas dejan en la página local de Google. Si son positivas, estas reseñas ayudarán a mejorar la confianza y credibilidad de una marca.

Participa en nuestro sorteo enviando un email con tu nombre y el asunto «Sorteo AUDITORÍA SEO». Se realizara un sorteo cada mes.

Evaluación EXCELENTE
A base de 7 reseñas
Contactamos con Iñigo para el diseño web de nuestra tienda online y estamos encantados. Su asesoramiento, seguimiento y trato han sido excepcionales. Un verdadero crack. Recomendado al 100%. No dudes en ponerte en contacto con el.
erlantz rique
erlantz rique
19/02/2024
Un acierto quien elija a Iñigo. Autentico profesional, se preocupó en todo momento que entendiera el funcionamiento de la web. Me explicó todo las veces necesarias hasta entenderlo. Se preocupó y acertó en que la web tuviera lo que le pedí y lo hizo con creces. Muy contento con el servicio prestado. Una vez realizado el trabajo, cualquier duda que tengo me sigue ayudando. Lo recomiendo sin temor a equivocarme.
Jose Marlasca
Jose Marlasca
06/02/2024
Dió en la clave y nos dió los instrumentos que necesitábamos en esos momentos, y sobre todo entendió a la perfección lo que buscábamos. Lo mejor de web que hemos tenido en 24 años. Eskerrik asko Mezo!!
Troka Abentura
Troka Abentura
07/01/2024
Compromiso, implicación e innovación en los proyectos. Atento a las necesidades e incansable en la búsqueda de soluciones. Muy buena opción.
Jabier Fuertes Udaondo
Jabier Fuertes Udaondo
07/01/2024
Si buscas a alguien que además de hacer un diseño web moderno, responsivo y adaptado a tu sector, te explique por qué plantea el diseño web de esa manera y que te explique y ayude en posicionar tu web lo mejor posible en base a los objetivos fijados, ese es Iñigo Mezo y os lo recomiendo al 100%
Asier Hermoso
Asier Hermoso
03/01/2024
Genial trabajar con él! Además de ser muy buen profesional, experto y responsable, a destacar tanto su implicación en cada proyecto, así como su trato siempre cercano y su paciencia infinita ;) Un crack!!
itxaso zubia
itxaso zubia
15/12/2023
El plugin gratuito para integrar productos de Prestashop en Wordpress muy sencillo de utilizar y muy bien documentado, os felicito.
Fernando Cózar
Fernando Cózar
02/11/2023