WooCommerce-où puis-je éditer du HTML généré par hooks?

Je suis nouveau à WooCommerce. Quoi qu'il en soit, je veux créer mon propre thème, donc j'ai suivi les lignes directrices et copié à travers les fichiers de template de base à /mywordpresstheme/thème/.

que tout fonctionne très bien et je suis en train d'éditer les gabarits très bien.

cependant, la façon dont les hooks et les actions fonctionnent dans WooCommerce me déconcerte et je ne peux pas trouver d'où certaines parties du HTML généré proviennent.

Par exemple,content-product.php, il y a un crochet qui obtient l'image:

<?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' );
?>

Mais qu'est-ce que cela? D'où vient-elle?? Y a-t-il un indice dans le nom de l'action quant à l'endroit où je pourrais localiser le HTML généré dans le but de l'éditer?

j'ai lu l'article sur 'hooks and filters' sur WooCommerce, mais il n'explique rien quant à savoir où et comment les changer au cas par cas.

Toute aide serait grandement appréciée.

je suis nouveau dans ce système et je suis bien sûr, je suis juste en train de surestimer quelque chose de très évident.

Merci, Mikey.

24
demandé sur Michael Giovanni Pumo 2013-01-16 15:30:31

1 réponses

Mais qu'est-ce que cela? D'où vient-elle?? Est-il un indice dans l' nom de l'action où je pourrais trouver le HTML généré pour le but de l'éditer?

Ceci est un action hook. Il ne fait rien par lui-même par dire, mais les fonctions énumérées dans les commentaires hook et donc s'exécuter lorsque cette fonction est déclenchée. Il est dit dans les commentaires que la fonction woocommerce_template_loop_product_thumbnail est la fonction de responsable de l'obtention de la vignette. Vous vous pouvez trouver cette fonction dans le plugin Woocommerce. J'utilise L'éditeur de texte Sublime (bien que je pense que d'autres vont le faire aussi) pour chercher dans tout le dossier pour cette phrase et il me dit exactement dans quel fichier il est. Dans ce cas, c'est ce qu'on appelle une fonction branchable et se trouve dans woocommerce-template.php. (On l'appelle maintenant wc-template-hooks.php dans la version 2.1+)

Un enfichables fonction signifie que vous définissez une nouvelle version de la fonction avec le même nom dans votre thème fonction.php

function woocommerce_template_loop_product_thumbnail(){
  echo "apple";
}

si vous mettez ce qui précède dans vos fonctions.php alors au lieu de Woo woocommerce_template_loop_product_thumbnail() vous verriez simplement le mot Pomme.

j'ai lu l'article sur 'hooks and filters' sur WooCommerce, mais il explique rien concernant où ou comment les changer sur un cas pour cas.

vous apporterez tous les changements aux fonctions de votre thème.php et une base de cas par cas n'est pas nécessaire. Tous les crochets et filtres se comportent de la même façon. Cela dit, ils ne sont pas la chose la plus facile à apprendre, alors ayez de la patience avec vous-même. J'ai trouvé les filtres particulièrement durs pour envelopper ma tête.

dans un spot d'autopromotion gratuite, j'ai écrit une série d'articles sur le notions de base de WordPress, des crochets et des filtres (un article dit que c'est pour Thématique crochets, mais un crochet un crochet! ) qui sont toutes les choses que je souhaite que les gens me l'avait dit au début de mon WordPress carrière.

49
répondu helgatheviking 2014-07-28 19:03:56