WooCommerce - ¿dónde puedo editar HTML generado por hooks?


Soy nuevo en WooCommerce. De todos modos, quiero crear mi propio tema, así que seguí las directrices y copié los archivos de plantilla principales para /mywordpresstheme / woocommerce/.

Todo eso funciona muy bien y estoy editando las plantillas muy bien.

Sin embargo, la forma en que funcionan los ganchos y las acciones en WooCommerce me desconcierta y no puedo averiguar de dónde vienen ciertas partes del HTML generado.

Por ejemplo, en content-product.php, hay un gancho que obtiene la imagen:

<?php
/*
* woocommerce_before_shop_loop_item_title hook
*
* @hooked woocommerce_show_product_loop_sale_flash - 10
* @hooked woocommerce_template_loop_product_thumbnail - 10
*/
do_action( 'woocommerce_before_shop_loop_item_title' );
?>

Pero, ¿qué es esto? ¿De dónde viene?? ¿Hay alguna pista en el nombre de la acción en cuanto a dónde podría localizar el HTML que se genera con el propósito de editarlo?

He leído el artículo sobre 'hooks and filters' en WooCommerce, pero no explica nada sobre dónde o cómo cambiarlos caso por caso.

Cualquier ayuda sería muy apreciada.

Soy nuevo en este sistema y estoy seguro de que simplemente estoy sobrepasando algo muy obvio.

Gracias, Mikey.

Author: Michael Giovanni Pumo, 2013-01-16

1 answers

Pero, ¿qué es esto? ¿De dónde viene?? ¿Hay alguna pista en el nombre de la acción en cuanto a dónde podría localizar el HTML que se genera para ¿el propósito de editarlo?

Esto es un action hook. No está haciendo nada por sí mismo, pero las funciones enumeradas en los comentarios hook en él y por lo tanto se ejecutan cuando se activa esta función. Dice en los comentarios que function woocommerce_template_loop_product_thumbnail es la función responsable de obtener la miniatura. Usted puede encontrar esta función dentro del plugin Woocommerce. Uso el editor de texto Sublime (aunque creo que otros también lo harán) para buscar esa frase en toda la carpeta y me dice exactamente en qué archivo está. En este caso es lo que se llama una función conectable y se encuentra en woocommerce-template.php. (Ahora se llama wc-template-hooks.php en la versión 2.1+)

Una función conectable significa que usted define una nueva versión de la función con el mismo nombre en las funciones de su tema.php

function woocommerce_template_loop_product_thumbnail(){
  echo "apple";
}

Si pones lo anterior en sus funciones.php entonces en lugar de Woo woocommerce_template_loop_product_thumbnail() simplemente verías la palabra apple.

He leído el artículo sobre 'ganchos y filtros' en WooCommerce, pero no explica nada con respecto a dónde o cómo cambiar estos en un caso para base del caso.

Realizará todos los cambios en las funciones de su tema.php y una base caso por caso no es necesario. Todos los ganchos y filtros se comportan igual. Dicho esto, no son lo más fácil de aprender, así que ten paciencia contigo mismo. Me encontré que los filtros eran especialmente difíciles de entender.

En un lugar de autopromoción gratuita escribí una serie de artículos sobre los fundamentos de WordPress ganchos y filtros (un artículo dice que es para ganchos temáticos,pero un gancho es un gancho! esas son todas las cosas que desearía que la gente me hubiera dicho al comienzo de mi carrera en WordPress.

 49
Author: helgatheviking,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-28 19:03:56