Perú

Lima,Perú

WordPress agregar código con Hooks

Fecha Publicación:       20 de Mayo de 2020
Fecha Modificación:       21 de Mayo de 2020

 

 

Los Hooks permite inyectar codigo personalizado a WordPress sin modificar los archivos que vienen por defecto.

Existen varios sitios donde podemos ver los HOOKS que tiene disponible WordPress  pero el mas conocido es  www.hookr.io       

Y tenemos Hook de 2 tipos:

Actions Hooks 

Actions Hook que nos permite ejecutar funciones.

Si quieres ver todos los action hooks que existen, aprender a utilizarlos y saber en qué orden cargan, te recomiendo que visites la documentación oficial de WordPress sobre Action Hooks.

add_action( string $nombre_accion, callable $nombre_tu_funcion, int $prioridad, int $numero_parametros=1);
  • $nombre_acción (requerido): El nombre de la acción a la que se va a enganchar la función que añadas en $nombre_funcion.
  • $nombre_funcion (requerido): El nombre de la función que creaste para utilizar con este action hook.
  • $prioridad (opcional):  Se especifica el orden en el que se ejecutan las funciones que están asociadas a ese gancho. Su valor por defecto es 10. Cuanto más pequeño es el número, antes se ejecuta esa función. Si el valor es igual entre dos funciones, se ejecutará antes la que se haya agregado primero al action hook.
  • $numero_parametros (opcional): Un número que indica la cantidad de parámetros que vas a pasar a la función. Por defecto, es 1.

 

Filter Hooks

Ejecutar funciones que reciben un parámetro,modifica el parámetro y luego lo retorna.

add_filter($tag,$funcion);​

Por jemplo usaremos un Hook de contenido vamos a menú core y buscamos the_content

 

Ejemplos Actions Hook: 

Entramos a la pagina web www.hookr.io    y vamos al menu Core y selecionamos menu Actions  aqui  buscamos wp_head    

a) wp_head  -->  Nos permite ingresar codigo dentro de las etiquetas   <head></head>.

Aqui nos indica como usar este Hook:

// define the wp_head callback 
function action_wp_head(  ) { 
    // make action magic happen here... 
};          
// add the action 
add_action( 'wp_head', 'action_wp_head', 10, 0 ); 

Ahora usamos el plugin de Snippets para agregar el codigo:

// el nombre de funcion puede cambiar por ejemplo 
// action_wp_head cambiaremos por action_wp_head_meta
function action_wp_head_meta(  ) { 
    echo "<meta name='prueba' content='prueba' />";
};          
// add the action 
add_action( 'wp_head', 'action_wp_head_meta', 10, 0 ); 

 

b) get_header = Se activa antes de que se cargue el archivo de plantilla de encabezado es decir antes del Head.   

Este codigo HOOKS  lo    agregamos en un snippets con la función do_shortcode  agregamos un shortcode y con el HOOKS  get_header  lo agregamos antes de la cabecera  <head>:  

// define the get_header callback 
function action_get_header( $name ) { 
	echo do_shortcode('[smartslider3 slider="2"]');
}; 
         
// add the action 
add_action( 'get_header', 'action_get_header', 10, 1 ); 

 

Ejemplos Filter Hook:

Como ejemplo vamos a rrabajar con un Hook de contenido que modifica el contenido de las entradas.

Entramos a la pagina web www.hookr.io    y vamos al menu Core y selecionamos menu Filters  aqui  buscamos the_content      

The following example is for adding a hook callback.

// define the the_content callback 
function filter_the_content( $post_post_content ) { 
    // make filter magic happen here... 
    return $post_post_content; 
}; 

// add the filter 
add_filter( 'the_content', 'filter_the_content', 10, 1 ); 

Ahora usamos el plugin de Snippets para agregar el codigo:

// define the the_content callback 
function filter_the_content( $post_post_content ) { 
    // $post_post_content =Nos decuelve todo el contenido
    //  estamos concatenando el texto esto ira al final de todo el contenido

    return $post_post_content ."<br/> Esto irá al final de todo el contenido...."; 
}; 

// add the filter 
add_filter( 'the_content', 'filter_the_content', 10, 1 ); 


Resultado final en las entradas de  nuestra web:

 

Leidas : 272 Veces
Compartir:

Artículos Relacionados