Подробное руководство по работе с хуками WooCommerce
Хуки WooCommerce, несомненно, важны, и их правильное размещение помогает расширить функциональность магазина без внесения изменений в основной код темы магазина.
В данной статье мы предоставим полный список хуков WooCommerce и опишем основные области применения, а также покажем примеры размещения областей для хуков, чтобы вам в дальнейшем было проще их использовать.
Для начала пару слов о WooCommerce Хуках. Они построены по тому же принципу, что и все остальные WordPress Хуки и служат в первую очередь для разметки всех страниц для последующего быстрого использования Действий и Фильтров.
Основная область применения хуков — это возможность создания независимых плагинов и расширений, которые не меняют основной код WordPress, WooCommerce и других плагинов, к которым применяются, и таким образом не влияют на дальнейшее обновление и стабильную работу.
В целом WooCommerce очень красиво размеченный с помощью хуков, что позволяет легко расширять его возможности. Ниже мы рассмотрим все области, которые размечены на данный момент хуками.
WooCommerce Global Hooks
К глобальным мы отнесли три хуки, которые отражаются на основных страницах и позволяют их широко дополнить. Среди них:
pre_get_product_search_form
Позволяет добавить информацию над основным поиском по продуктам.
woocommerce_breadcrumb
Позволяет отобразить информацию над ссылками breadcrumbs.
woocommerce_no_products_found
Позволяет отобразить необходимую информацию на странице поиска, если не найдено ни одного товара.
WooCommmerce Cart Hooks
В целом страница корзины в WooCommerce очень хорошо размечена. Для удобства мы разделили на три группы все хуки, которые используются на странице Cart.
Хуки, которые отображаются перед списком товаров в корзине
К ним относятся следующие:
- woocommerce_before_cart
- woocommerce_before_cart_table
- woocommerce_before_cart_contents
- woocommerce_cart_contents
- woocommerce_after_cart_contents
Хуки, которые отображаются после списка товаров в корзине
К ним относятся следующие хуки:
- woocommerce_cart_coupon
- woocommerce_cart_actions
- woocommerce_after_cart_table
- woocommerce_cart_collaterals
- woocommerce_before_cart_totals
Хуки, которые отражаются в итоге заказа
К ним относятся следующие хуки:
- woocommerce_cart_totals_before_shipping
- woocommerce_cart_totals_after_shipping
- woocommerce_cart_totals_before_order_total
- woocommerce_cart_totals_after_order_total
- woocommerce_after_shipping_rate
- woocommerce_before_shipping_calculator
- woocommerce_proceed_to_checkout
- woocommerce_after_cart_totals
- woocommerce_after_cart
В случае, если в корзине нет товаров
В этом случае вы можете использовать следующий хук:
woocommerce_cart_is_empty
WooCommerce Checkout Hooks
Поскольку страница Checkout на WooCommerce очень функциональная, мы также решили разделить все хуки, которые здесь используются, на несколько категорий.
Хуки, которые используются перед формой контактных данных
К ним относятся следующие хуки:
- woocommerce_before_checkout_form
- woocommerce_checkout_before_customer_details
- woocommerce_checkout_billing
- woocommerce_before_checkout_billing_form
Хуки, которые используются для разметки Billing details
К ним относятся следующие хуки:
- woocommerce_after_checkout_billing_form
- woocommerce_checkout_shipping
- woocommerce_before_order_notes
- woocommerce_after_order_notes
- woocommerce_checkout_after_order_review
Хуки, которые используются перед итогом товаров в заказе
К ним относятся следующие хуки:
- woocommerce_checkout_after_customer_details
- woocommerce_checkout_before_order_review
- woocommerce_review_order_before_cart_contents
- woocommerce_review_order_after_cart_contents
- woocommerce_review_order_before_shipping
- woocommerce_review_order_after_shipping
- woocommerce_review_order_before_order_total
- woocommerce_review_order_after_order_total
Хуки, которые отображаются в конце формы заказа
К ним относятся следующие хуки:
- woocommerce_checkout_order_review
- woocommerce_review_order_before_payment
- woocommerce_review_order_before_submit
- woocommerce_review_order_after_submit
- woocommerce_review_order_after_payment
- woocommerce_after_checkout_form
Хуки, которые отображаются в списке товаров в заказе
К ним относятся следующие хуки:
- woocommerce_order_items_table
- woocommerce_order_item_meta_start
- woocommerce_order_item_meta_end
- woocommerce_order_details_after_order_table
- woocommerce_thankyou
WooCommerce Product Hooks
В данном разделе рассмотрим все хуки, которые используются на странице товара. Здесь также есть большое количество возможных хуков, поэтому мы их разбили на несколько категорий по назначению.
Хуки, которые отражаются сначала и в конце страницы товара
К ним относятся следующие хуки:
- woocommerce_before_main_content
- woocommerce_after_main_content
Хуки, которые отображаются перед началом и в конце описания товара
К ним относятся следующие хуки:
- woocommerce_before_single_product_summary
- woocommerce_after_single_product_summary
Хуки, которые отображаются перед началом и в конце карточки товара
К ним относятся следующие хуки:
- woocommerce_before_single_product
- woocommerce_after_single_product
Хуки, которые отражаются непосредственно в кратком описании товара
К ним относятся следующие хуки:
- woocommerce_single_product_summary
- woocommerce_product_meta_start
- woocommerce_product_meta_end
- woocommerce_share
Хуки, которые отображаются среди списка комментариев
К ним относятся следующие хуки:
- woocommerce_review_before
- woocommerce_review_before_comment_meta
- woocommerce_review_meta
- woocommerce_review_before_comment_text
- woocommerce_review_comment_text
- woocommerce_review_after_comment_text
WooCommerce Category Hooks
WooCommerce имеет также достаточно хуков для работы с категориями товаров. Ниже мы рассмотрим их с кратким описанием и скринами.
woocommerce_archive_description
Отображается сразу под заголовком категории.
woocommerce_shop_loop
Отображается перед карточкой товара в списке.
woocommerce_before_shop_loop
Отображается перед списком товаров в категории.
woocommerce_after_shop_loop
Отображается после списка товаров в категории.
woocommerce_after_shop_loop_item
Отражается в конце описания каждой карточки товара в списке.
Хуки, которые дополнительно размечают карточку товара в списке.
К ним относятся следующие хуки:
- woocommerce_after_shop_loop_item_title
- woocommerce_shop_loop_item_title
- woocommerce_before_shop_loop_item_title
WooCommerce My Account Hooks
Эти хуки служат для детальной разметки страницы My Account. Мы также выделили две категории таких хуков.
Основные хуки для разметки страницы Мой Аккаунт
К ним относятся следующие:
- woocommerce_before_account_navigation
- woocommerce_after_account_navigation
- woocommerce_account_navigation
- woocommerce_before_edit_account_address_form
- woocommerce_after_edit_account_address_form
- woocommerce_account_content
Дополнительные хуки для разметки страницы Мой аккаунт
К ним относятся следующие:
- woocommerce_account_dashboard
- woocommerce_before_my_account
- woocommerce_after_my_account
WooCommerce Mini Cart Hooks
Данные хуки служат для разметки мини-корзины, которая отображается в сайдбаре, если использовать дополнительные настройки отображения WooCommerce.
К ним относятся следующие:
- woocommerce_before_mini_cart
- woocommerce_before_mini_cart_contents
- woocommerce_mini_cart_contents
- woocommerce_widget_shopping_cart_before_buttons
- woocommerce_widget_shopping_cart_buttons
- woocommerce_after_mini_cart
WooCommerce Email Hooks
Служат для разметки писем, которые направляются пользователям после покупки, и содержат список товаров.
К ним относятся следующие:
- woocommerce_email_after_order_table
- woocommerce_email_before_order_table
- woocommerce_email_customer_details
- woocommerce_email_footer
- woocommerce_email_header
- woocommerce_email_order_details
- woocommerce_email_order_meta
Другие хуки
Выше мы описали основные хуки, которые используются для разметки и расширения основного функционала WooCommerce.
Однако существует еще ряд хуков, которые используются в меньшей степени. Мы предоставляем полный список ниже:
- woocommerce_after_account_downloads
- woocommerce_after_account_orders
- woocommerce_after_account_payment_methods
- woocommerce_before_account_download
- woocommerce_before_account_order
- woocommerce_before_account_orders_paginatio
- woocommerce_before_account_payment_method
- woocommerce_edit_account_for
- woocommerce_edit_account_form_en
- woocommerce_edit_account_form_star
- woocommerce_resetpassword_for
- woocommerce_after_available_downloads
- woocommerce_after_checkout_registration_form
- woocommerce_after_checkout_shipping_form
- woocommerce_after_edit_account_form
- woocommerce_after_subcategor
- woocommerce_after_subcategory_titl
- woocommerce_auth_page_foote
- woocommerce_auth_page_heade
- woocommerce_available_download_en
- woocommerce_available_download_star
- woocommerce_before_available_download
- woocommerce_before_checkout_registration_for
- woocommerce_before_checkout_shipping_for
- woocommerce_before_edit_account_for
- woocommerce_before_subcategor
- woocommerce_before_subcategory_titl
- woocommerce_cart_has_error
- woocommerce_checkout_after_terms_and_condition
- woocommerce_checkout_before_terms_and_condition
- woocommerce_lostpassword_for
- woocommerce_order_details_after_customer_detail
- woocommerce_pay_order_after_submi
- woocommerce_pay_order_before_submi
- woocommerce_product_thumbnail
- woocommerce_shop_loop_subcategory_titl
- woocommerce_view_order
В случае, если вам нужно дополнительное объяснение по любому хуку, оставляйте комментарии, мы с радостью объясним дополнительно и расширим материал.
- Создание зарубежного магазина и старт продаж в любой стране мира «
- Дайджест новостей ImageCMS: 16 марта, 2018 »
а какой хук можно использовать для добавления настройке атрибута товаров в админке произвольных полей?
Как скрыть номер заказа на странице «Спасибо. Ваш заказ был принят»?
Контент хорошо преподнесен.
Пока что пришлось отрезать из файла. Хук подходящий не нашел.
В зависмости от шаблона, файл \wp-content\themes\тема\woocommerce\order\order-overview.php, блок …
Здравствуйте. Подскажите, пожалуйста, как добавить к изображению товара на странице каталога свой class? Не нужно ничего менять в самой функции, просто дополнить своим классом.
Попробуйте подобрать в магазине дополнений WP сторонний плагин, например PHP Code Snippet.
Пожалуйста, поставьте увеличение картинок
Ничего НЕ видно
Контент уникальный — спасибо