¿Qué son los ganchos de WordPress? ¿Cómo ayudan las acciones y los filtros a ampliar la funcionalidad?
Publicado: 2018-06-13
Última actualización - 9 de octubre de 2020
Si alguna vez ha trabajado en WordPress, debe haber encontrado la palabra ' Gancho ' muchas veces. Si es un desarrollador de WordPress que quiere crear complementos y temas, entonces los ganchos de WordPress son cruciales para su desarrollo.
Pero, ¿qué son exactamente los ganchos?
De acuerdo con el códice de WordPress.org, “ WordPress proporciona ganchos para permitir que su complemento se 'enganche' al resto de WordPress; es decir, llamar a funciones en su complemento en momentos específicos y, por lo tanto, ponerlo en marcha”.
Los ganchos en términos generales conectan una cosa con otra. En la terminología de WordPress, engancha (conecta) el código definido por el usuario con el código existente del núcleo de WordPress.
Aclaremos esto.
WordPress está construido con algunas funciones predeterminadas. Tiene un comportamiento predeterminado y valores asociados con él. Con los ganchos, puede modificar este comportamiento predeterminado y reemplazar el valor existente, por lo tanto, personalizar el entorno de WordPress según sus necesidades.
Tipos de ganchos
Hay dos tipos de Ganchos:
- Ganchos de acción : se utilizan para ejecutar en algún punto de la ejecución, cambiando el flujo de ejecución predeterminado. Aquí hay una lista de ganchos de acción de WordPress.
- Ganchos de filtro : ligeramente diferentes de los ganchos de acción, los ganchos de filtro se utilizan para modificar los datos predeterminados de WordPress y reemplazarlos con un valor personalizado, antes de que se muestren al usuario en el front-end o se almacenen en la base de datos. Se puede encontrar una lista de ganchos de filtro en el Codex de WordPress.
Básicamente, los ganchos son funciones predefinidas en sí mismas. Por lo tanto, los dos tipos de funciones asociadas con los ganchos son:
- Funciones de acción : estas funciones son útiles en eventos cuando se publica un blog, se carga una página, etc.
Las siguientes son algunas de las funciones de Acción:- añadir_acción()
- did_action()
- haciendo_acción()
- hacer_acción()
- hacer_acción_ref_array()
- tiene_acción()
- remove_action()
- eliminar_todas_las_acciones()
- Funciones de filtro : cada función de filtro devuelve algún valor y lo reemplaza con los datos predeterminados de WordPress.
Las funciones de filtro incluyen lo siguiente:- Añadir filtro()
- aplicar_filtros()
- aplicar_filtros_ref_array()
- filtro_actual()
- haciendo_filtro()
- tiene_filtro()
- eliminar_todos_los_filtros()
- eliminar_filtro()
Una infografía
Observa la siguiente infografía para comprender mejor cómo funcionan los ganchos.

Como se muestra en la infografía anterior, las funciones de Acción y Filtro hacen uso de los ganchos respectivos para modificar el código central de WordPress.
¿Cómo se ve un gancho?
Un gancho de acción típico toma la siguiente forma:
add_action ( 'hook', 'your_custom_function_name', [priority], [accepted_parameters] ); función your_custom_function_name() { //Tu código personalizado }
Donde hook es el nombre del hook, your_custom_function_name es el nombre de la función con su código personalizado, el parámetro de prioridad opcional que indica cómo se debe ejecutar el hook, los parámetros aceptados que indican los parámetros adicionales y el código personalizado. los La llamada a la función ( add_action()) puede estar debajo o encima del fragmento de código.
Un gancho de filtro tiene la siguiente forma:
add_filter('filtro', 'su_nombre_de_función_personalizado', 'prioridad', 'argumentos_aceptados'); función your_custom_function_name($variable) { //Tu código personalizado devolver; }
Donde add_filter() es uno de las funciones de enlace de filtro, filter es el nombre del filtro que va a usar, your_custom_function_name es el nombre de su función definida por el usuario, el parámetro de prioridad indica el orden de ejecución del enlace, accept_args indica los argumentos que se pasarán y el personalizado código con el valor de retorno obligatorio.

Al igual que WordPress, también hay ganchos disponibles para WooCommerce. Estos ganchos se utilizan ampliamente para desarrollar complementos, temas y personalizar el proceso de pago de WooCommerce.
Lee Hooks de WooCommerce: Acciones y filtros en la documentación de WooCommerce para entender los hooks de WooCommerce en detalle.
Demostración
Entendamos los ganchos usando algunos fragmentos de código de muestra.
Gancho de acción y función
//Agregar un gancho de acción function my_action_hook() { echo "<p align='center'>Este es un ejemplo de gancho de acción</p>"; } add_action('get_header', 'my_action_hook');
En el fragmento de código anterior, 'my_action_hook' es el nombre de la función personalizada, 'add_action' es una de las funciones de acción y 'get_header' se usa para personalizar el encabezado de la plantilla. En el fragmento de código proporcionado, mostramos el texto "Esta es una demostración de gancho de acción" en la sección de encabezado del sitio web.
A continuación se muestra una captura de pantalla de muestra que muestra los cambios del fragmento de código aplicado.

Gancho de filtro y función
//Añadiendo un gancho de filtro add_filter('woocommerce_get_price_html','my_filter_hook'); función my_filter_hook($precio){ return 'Por solo '.$precio; }
En el fragmento de código anterior, 'woocommerce_get_price_html' es un gancho de WooCommerce para obtener el precio del producto, 'my_filter_hook' es el nombre del filtro definido por el usuario y '$price' es una variable definida por el usuario. El fragmento de código simplemente agrega el prefijo "Por solo" al precio del producto.
La siguiente captura de pantalla muestra cómo el fragmento de código afecta a nuestra tienda WooCommerce.

Este es solo un ejemplo simple, hay muchas cosas que puedes lograr con Hooks.
¿Cómo ayudan las acciones y los filtros a ampliar la funcionalidad?
- La principal ventaja de usar Hooks es que ayuda a personalizar el código principal de WordPress.
- Cualquier cambio en el desarrollo se puede monitorear cuidadosamente ya que la modificación es mínima en lugar de múltiples ocasiones en el código.
- El desarrollo de nuevos complementos se hace mucho más fácil con el método de prueba y prueba.
- Para el desarrollo de temas, uno puede crear temas secundarios y jugar con ganchos sin afectar el tema principal.
- Es una oferta de WordPress simple y fácil de usar que tiene una estructura comprensible y documentación detallada para cualquier referencia.
- Admite WooCommerce, el complemento de comercio electrónico de WordPress más popular. Los complementos de precios de WooCommerce cambian ampliamente los precios de los productos, los cálculos de precios y ofrecen precios y descuentos dinámicos utilizando ganchos de WooCommerce. Los detalles del pedido, la información del producto, los detalles del envío, entre otras cosas, se pueden tocar con ganchos personalizados.
Comentarios Concluyentes
Los ganchos de WordPress son el mecanismo clave para el desarrollo de complementos y temas. Son ampliamente utilizados para modificar el código existente de WordPress para personalizar el sitio web. Si bien los ganchos tienen una serie de ventajas, uno debe asegurarse de que cada gancho personalizado sea único y no se superponga con otro gancho del mismo nombre. Incluso en tal caso, puede asignar prioridad a los ganchos para su ejecución según sus necesidades.
Consulte nuestros artículos de personalización de WooCommerce para obtener consejos sobre cómo personalizar su tienda WooCommerce.
O continúe explorando LearnWoo para obtener más artículos sorprendentes.