<?php do_action( 'woocommerce_archive_description' ); ?>
<?php
/**
* woocommerce_after_main_content hook
*
* @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content)
*/
do_action( 'woocommerce_after_main_content' );
?>
Того же эффекта можно достичь без правки файлов шаблонов WooCommerce с помощью добавления в functions.php темы следующего кодаЕсли вы хотите чтобы описание категории было не над товарами а под ними, тогда в файле archive-product.php ищем следующий кодвырезаем его, и спускаем ниже перед следующим кодомКод:<?php do_action( 'woocommerce_archive_description' ); ?>
незабываем отредактированный файл archive-product.php перетащить в папку woocommerce вашей темыКод:<?php /** * woocommerce_after_main_content hook * * @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content) */ do_action( 'woocommerce_after_main_content' ); ?>
// удаляем описание категории на странице категорий
remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
// выводим описание категории под товарами
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );
Так делать не стоит, т.к. при обновлении плагина WooCommerce изменения будет затерты.нашел решение на другом сайте:
Итак, находим файл, который лежит /wp-content/plugins/woocommerce/templates.
1. Открываем его в ищем следующий фрагмент кода:
<h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
<?php endif; ?>
<?php do_action( 'woocommerce_archive_description' ); ?>
2.Вырезаем его и вставляем перед фрагментом кода woocommerce_after_main_content_hook.
Сохраняем файл и обновляем страницу сайта. И, о чудо, у нас все получилось. Описание категории товара находится ниже товара. У вас не так?
Внимательный читатель обратил, наверное, внимание на фразу «После долгих поисков, казалось, ответ был найден.» Вы догадались, что у меня не получилось. Почему? Проблема была в теме, которую я естественно менять не хотел. После долгих проб и ошибок в поиске решения проблемы — ответ был снова найдет. Но к сожалению не такой изящный, как описанный выше. Чем хорош первый вариант? А тем, что измененный файл кладешь в папку woocommerce, которая находится в вашей теме, и забываешь обо всем. Ни какие обновления woocommerce вам не страшны. Но делать нечего, цель поставлена и надо к ней идти. Итак, представляю вам второе решение проблемы:
1. Находим файл wc-template-functions.php. Он лежит :wp-content/plugins/woocommerce/includes/
2. Находим фрагмент кода:
<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>
<h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
<?php endif; ?>
<?php do_action( 'woocommerce_archive_description' ); ?>
3. Вырезаем его и вставляем ниже этой строки:
<?php woocommerce_product_loop_end(); ?>
4. Сохраняем файл и наслаждаемся проделанной работой.
Как я уже писал, недостатки этого метода в том, что при обновлении woocommerce обновиться файл, который был изменен. По этой причине, держите где-нибудь его копию.
add_filter('woocommerce_show_page_title','my_woocommerce_show_page_title');
function my_woocommerce_show_page_title() {
if (is_product_category())
return false; // убираем заголовк со страницы категорий
else
return true; // оставляем заголовок на других страницах
}
// выводим заголовок категории после списка товаров
add_action( 'woocommerce_after_shop_loop', 'my_show_page_title', 99 );
function my_show_page_title() {
if (is_product_category()) {
echo '<h1 class="page-title">'. woocommerce_page_title(false).'</h1>';
}
}
// Выводим изображение категории на странице рубрики в WooCommerce
add_action( 'woocommerce_archive_description', 'woocommerce_category_image', 2 );
function woocommerce_category_image() {
if ( is_product_category() ){
global $wp_query;
$cat = $wp_query->get_queried_object();
$thumbnail_id = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );
$image = wp_get_attachment_url( $thumbnail_id );
if ( $image ) {
echo '<img src="' . $image . '" alt="" />';
}
}
}
Код вставьте в functions.php своей темыА подскажите, как поменять местами текст на главной и каталог товаров?
Сайт benzograd.com.ua
remove_action( 'woocommerce_archive_description', 'woocommerce_product_archive_description', 10 );
add_action( 'woocommerce_after_shop_loop', 'woocommerce_product_archive_description', 100 );