/ Плагины / Шаблон вывода категорий woocommerce

Шаблон вывода категорий woocommerce

HIT

22.11.2018

10797

1

Зафиксировать шаблон (код) вывода категорий Woocommerce (я его назвал product-cat-list.php). Обычно я вывожу этот шаблон на стандартной странице /shop/

Шаблон вывода категорий

<div id="subcategory-archive">

<?php $terms = get_terms( array(
	'taxonomy' => 'product_cat',
	'hide_empty' => true,
	'pad_counts'=> true,
	'orderby' => 'name',
	'parent' => 0
) ); ?>  

<?php if($terms) : ?>
<?php foreach($terms as $term) : ?>

	<div class="subcategory"> 

	<a class="subcategory-image" href="<?php echo get_term_link($term->term_id);?>"><?php woocommerce_subcategory_thumbnail( $term );  ?></a>
	<h2 class="subcategory-title"><a href="<?php echo get_term_link($term->term_id);?>"><?php echo $term->name;?></a></h2>
	<p class="count"><?php if ($term->count > 0) : ?><?php echo $term->count; ?><?php else: ?>0<?php endif; ?></p>  
	<!--<div class="subcategory-descripton"><p><?php //if($term->description) : ?><?php //echo $term->description; ?><?php //else: ?>Описание термина таксономии<?php //endif; ?></p></div>-->

	<?php // Создаем массив терминов детей текущего термина текущей таксономии
	$tax = $term->taxonomy;
	$children_terms = get_terms( array(
		'taxonomy' => $tax,
		'hide_empty' => false,
		'parent' => $term->term_id
	) ); ?>

	<?php if($children_terms): // если есть дочерние категории ?>
	<ul><?php foreach ($children_terms as $children_term) : ?>
	<?php $link = get_term_link($children_term); ?>

		<li><a href="<?php echo $link ?>";><?php echo $children_term->name ?></a></li>
		<!--<p class="count"><?php //echo $children_term->count ?></p>-->

	<?php endforeach; ?></ul>
	<?php endif; // конец условия - если есть дочерние термины таксономии ?>  

	</div>

<?php endforeach; ?>
<?php endif; ?> 
  
</div>

Пересчет товаров во всех подкатегориях

В шаблоне выше выводится количество товаров в категориях, кол-во товаров в подкатегориях скрыто. Но тогда когда у нас есть подкатегории с товарами — необходимо считать товары во всех подкатегориях:

<?php if($children_terms): // если есть дочерние категории ?>
<ul><?php foreach ($children_terms as $children_term) : ?>
<?php $link = get_term_link($children_term); ?>

	<li><a href="<?php echo $link ?>";><?php echo $children_term->name; ?></a>
	<?php echo $children_term->count; ?></li>
	<?php $summ[] = $children_term->count; // запись в массив кол-ва товаров из каждой подкатегории ?>

<?php endforeach; ?></ul>
<?php echo array_sum($summ); $summ = []; // вывод общего количества товаров и обнуление массива ?>
<?php endif; // конец условия - если есть дочерние термины таксономии ?>

Шаблон вывода меток товаров

Этот шаблон аналогичен шаблону вывода категорий, но есть 2 особенности: у данной таксономии нет вложенности, а также нет изображения термина таксономии (нужно делать с помощью плагина Taxonomy term image master).

<div class="subcategory-archive">

	<?php $terms = get_terms( array(
		'taxonomy' => 'product_tag',
		'hide_empty' => true,
		'pad_counts'=> true,
		'orderby' => 'name',
		'parent' => 0
	) ); ?>  

	<?php if($terms) : ?>
	<?php foreach($terms as $term) : ?>

	<div class="subcategory"> 

		<a class="subcategory-image" href="<?php echo get_term_link($term->term_id);?>"><div class="imagewrapper"><?php if ( $term->term_image ) { echo wp_get_attachment_image( $term->term_image, 'shop_catalog' ); } ?></div></a>
		<h2 class="subcategory-title"><a href="<?php echo get_term_link($term->term_id);?>"><?php echo $term->name;?></a></h2>
		<!--<p class="count"><?php //if ($term->count > 0) : ?><?php //echo $term->count; ?><?php //else: ?>0<?php //endif; ?></p>-->
		<!--<div class="subcategory-descripton"><p><?php //if($term->description) : ?><?php //echo $term->description; ?><?php //else: ?>Описание термина таксономии<?php //endif; ?></p></div>--> 

	</div>

	<?php endforeach; ?>
	<?php endif; ?> 
  
</div>  
[site-socialshare]
  • Похожие записи
  • Комментарии
  • Вложения
Отзывы к товарам

Отзывы к товарам

Рассмотрим различные аспекты такого функционала WC как отзывы к товарам. Изображения в отзывах Плагин YITH WooCommerce Advanced Reviews (6000) добавляет в комментарии поле изображение (можно добавлять несколько) и заголовок. Также Читать далее »

Количество товара

Количество товара

Количество товара (quantity) — один важнейших элементов функционала интернет-магазина (woocommerce в частности). Есть множество нюансов связанных с количеством товара, рассмотрим их. Вывод количества в категориях товаров По умолчанию в шаблоне Читать далее »

Связывание товаров

Связывание товаров

Если товары продаются несколькими частями, но части нужно связать чтобы одну без другой нельзя было приобрести, можно связать такие товары. Как вариант такие товары можно заводить как один товар (в Читать далее »

Добавить комментарий

Notice: Функция WP_Styles::add вызвана неправильно. Стиль с дескриптором "editor-buttons" был поставлен в очередь с незарегистрированными зависимостями: dashicons. Дополнительную информацию можно найти на странице «Отладка в WordPress». (Это сообщение было добавлено в версии 6.9.1.) in /home/t/tiberi6w/opttour.ru/public_html/wp-includes/functions.php on line 6260

1 комментарий

  1. marina

    Вы мне спасли жизнь этой статьей! Продолжайте делиться такими способами правки кода, который можно использовать без прикручивания многотонных плагинов! Благодарность к вам  от меня — бемерная!

Шаблон вывода категорий woocommerce
Дочерние темы
Рекомендации для васДочерние темыOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.