Задать вопрос
Adward
@Adward
Вебмастер с 2001 года

Woocommerce. Как вывести карту категорий товаров?

Хочу вывести карту категорий товаров, приблизительно, как вот тут: https://obtorg.ru/sitemap/
Желательно, с количеством товаров в категориях. Как это реализовать, подскажите, пожалуйста.

Спасибо.
  • Вопрос задан
  • 110 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 1
andrashh
@andrashh
Почему бы и да?
Подправь как нужно. Можешь вывести основную переменную цикла в print_r, если доп данные нужн.
<?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) : ?>

		<h2 class="subcategory-title"><a href="<?php echo get_term_link($term->term_id);?>"><?php echo $term->name;?></a></h2>
		<!--<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 style="margin-left: 10px;"><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; // конец условия - если есть дочерние термины таксономии ?>  

	<?php endforeach; ?>
	<?php endif; ?>

вот вывод количества. Под заголовком нужно разместить.
<p class="count"><?php if ($term->count > 0) : ?><?php echo $term->count; ?><?php else: ?>0<?php endif; ?></p>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы