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

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

HIT

22.11.2018

1180

Зафиксировать шаблон (код) вывода категорий 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; // конец условия - если есть дочерние термины таксономии ?>

Тэги:

Поделится информацией с друзьями

  • Похожие записи
  • Комментарии
  • Вложения
Единица измерения товара

Единица измерения товара

В связи с растущими потребностями к функционалу интернет-магазинов будем создавать востребованный функционал на базе плагина Woocommerce. Единица измерения товара Если необходимо выводить единицу товара (шт, кв.м, упаковка, пог.м, и т.д.), Читать далее »

Метод изменения шаблонов woocommerce

Метод изменения шаблонов woocommerce

В данной статье будет рассмотрен метод изменения шаблонов плагина Woocommerce. Разделение шаблонов категории и товара Первым делом надо разделить общий шаблон woocommerce.php на woocommerce-product.php и woocommerce-category.php. Делаем это простой проверкой: Читать далее »

Обзор плагинов по фильтрации товаров WC

Обзор плагинов по фильтрации товаров WC

В данном обзоре мы будем приводить сильные и слабые стороны различных плагинов по созданию фильтрации товаров WC. Причем рассмотрим как платные, так и бесплатные решения. WooCommerce Products Filter (50 000) Читать далее »

/

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

Пока нет комментариев. Будь первым!

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