Изменение вывода заголовка товара в карточке товара

В этой статье мы разберем несколько пунктов касаемо изменения вывода заголовка товара.

  1. Вывести заголовок в произвольном месте карточки товара
  2. Изменение шаблона вывода заголовка

Начнем с того, что для изменение мы воспользуемся хуками woocommerce. Все изменения делаются в файле functions.php, но лучше создать отдельный файл под хуки и подключить его в том же functions.php

/**
 * Проверяем подключение плагина woocommerce.
 */
if ( class_exists( 'WooCommerce' ) ) {
	// Подключение хуков Woocommerce
	require get_template_directory() . '/inc/woocommerce-hooks.php';
}

Последующие хуки будут размещаться в файле woocommerce-hooks.php

//Удаляем заголовок из стандартного хука
remove_action('woocommerce_single_product_summary','woocommerce_template_single_title', 5);

Удаляем заголовок из стандартного хука для того чтобы он нам не мешался там.

Создаем свой хук для вывода заголовка:

add_action('af_wc_title','woocommerce_template_single_title', 5);

Выводиться данный хук будет через функцию:

<?php do_action('af_wc_title'); ?>

Изменить шаблон вывода заголовка:

Для изменения шаблона вывода так же воспользуемся хуками Woocommerce. Для начала снова удалим свой хук функцией. Надо для того, чтоб заголовок не дублировался.

//Удаляем свой заголовок
remove_action('af_wc_title', 'woocommerce_template_single_title' , 5);

Затем создаем фильтр для вывода нашего заголовка:

add_filter('af_wc_title','art_wc_title_filter');
function art_wc_title_filter() {
	the_title( '<h1 class="entry-title">', '</h1>' );
}

Выводиться заголовок будет так же через функцию:

<?php do_action('af_wc_title'); ?>

В дальнейших статьях мы разберем еще много чего интересного.