WordPress 5.4 – Hooks (ganchos) filters

En WordPress con los Hooks (ganchos) podemos modificar el contenido de las variables con el propósito de alterar el curso o flujo del plugin.

Estas modificaciones las hacemos con los Filters (filtros).

Debemos crear un nuevo plugin con los «Filters» y en el plugin original deben haber instrucciones como esta:

$can_add_price = apply_filters( 'filtro_antes_precio', $can_add_price, $otraVariableNecesaria );

Donde:

  • $can_add_price es la variable a modificar.
  • filtro_antes_precio es el nombre del filtro en el plugin original.
  • $can_add_price es un argumento a pasar, que puede ser la misma variable u otro valor necesario para modificar el contenido de la variable $can_add_price en el ejemplo. Se pueden pasar unos o más argumentos según las necesidades.

En nuestro nuevo plugin escribiremos algo como:

add_filter( 'filtro_antes_precio', 'cambiar_valor_can_add_price', 10, 1 );
function cambiar_valor_can_add_price( $can_add_price ) 
{
    $can_add_price = 5; 
    return $can_add_price;
}

Primero debemos escribir la función add_filter(…) la cual contiene cuatro parámetros:

  • El primero debe corresponderse al nombre del filtro en el plugin original.
  • El segundo es el nombre de nuestra función en el nuevo plugin.
  • El tercero es la prioridad: por defecto es 10, pero podemos colocar un número igual o mayor a uno para indicar la prioridad. Mientras más pequeño sea el número mayor prioridad tendrá para ejecutarse el filtro y
  • El cuarto es cuántas de las variables que envía el «Filter» en el plugin original usaremos, si una o dos, pero tienen que usarse en el orden en que están en el plugin original.

Luego escribir nuestra función cambiar_valor_can_add_price como se muestra en el ejemplo.

Fuente:

https://developer.wordpress.org/plugins/hooks/

https://make.wordpress.org/docs/plugin-developer-handbook/hooks/creating-custom-hooks/

https://docs.presscustomizr.com/article/26-wordpress-actions-filters-and-hooks-a-guide-for-non-developers

.

chevron_left
chevron_right

Dejar un comentario

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

Comentario
Nombre
Correo electrónico
Web