Подтвердить что ты не робот

WooCommerce - где я могу редактировать HTML, созданный с помощью перехватчиков?

Я новичок в WooCommerce. Во всяком случае, я хочу создать свою собственную тему, поэтому я следил за рекомендациями и копировал файлы основных шаблонов в /mywordpresstheme/woocommerce/.

Все отлично работает, и я очень хорошо редактирую шаблоны.

Однако, способы перехвата и действия, выполняемые в WooCommerce, меня озадачивают, и я не могу понять, откуда происходят определенные части сгенерированного HTML.

Например, в content-product.php есть крючок, который получает изображение:

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

Но что это? От куда это?? Есть ли какая-либо подсказка в имени действия относительно того, где я мог бы найти HTML, сгенерированный с целью его редактирования?

Я прочитал статью о "перехватах и ​​фильтрах" в WooCommerce, но в ней ничего не говорится о том, где и как изменить их в случае case case.

Любая помощь будет принята с благодарностью.

Я новичок в этой системе, и я уверен, что я просто пересматриваю что-то очень очевидное.

Спасибо, Mikey.

4b9b3361

Ответ 1

Но что это? От куда это?? Есть ли какая-либо подсказка в имя действия относительно того, где я мог бы найти HTML, сгенерированный для цель его редактирования?

Это action hook. Он ничего не делает сам по себе, скажем, но функции, перечисленные в комментариях hook, в него и, следовательно, запускаются при запуске этой функции. В комментариях говорится, что функция woocommerce_template_loop_product_thumbnail - это функция, ответственная за получение миниатюры. Вы можете найти эту функцию внутри плагина Woocommerce. Я использую редактор Sublime Text (хотя я думаю, что другие тоже это сделают), чтобы искать всю папку для этой фразы, и она сообщает мне, в каком именно файле она находится. В этом случае это то, что называется подключаемой функцией и находится в woocommerce-template.php. (Теперь он называется wc-template-hooks.php в версии 2.1 +)

Подключаемая функция означает, что вы определяете новую версию функции с тем же именем в своей теме functions.php

function woocommerce_template_loop_product_thumbnail(){
  echo "apple";
}

Если вы положили это в свои functions.php, вместо Woo woocommerce_template_loop_product_thumbnail() вы просто увидите слово apple.

Я прочитал статью о "перехватах и ​​фильтрах" в WooCommerce, но это ничего не объясняет, где и как изменить их на случай случай.

Вы внесете все изменения в свою тему functions.php и в каждом случае не обязательно. Все крючки и фильтры ведут себя одинаково. Тем не менее, это не самая легкая вещь, чтобы учиться, поэтому терпите себя. Я обнаружил, что фильтры особенно тяжелы, чтобы обернуть мою голову.

В месте бесплатной саморекламы я написал серию статей о основах крючков и фильтров WordPress (в одной статье говорится, что это для Thematic hooks, но крюк - это крючок!), которые все, что я хотел бы, чтобы люди рассказали мне в начале моей карьеры в WordPress.