/ Плагины / Подкатегория за подкатегорией

Подкатегория за подкатегорией

HIT

19.09.2018

1329

В одной из ранних статей мы отдельно от основного вывода WC выводили подкатегории. В этой статье мы усложним код вывода категорий и сделаем у категорий и вывод товаров. Это даст нам решение: подкатегория -> товары, подкатегория -> товары … и т.д.

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

Доработка функции вывода подкатегорий

Жирным выделена новая часть, которую я добавил в предыдущее решение

function tutsplus_product_subcategories( $args = array() ) {
	if ( !is_search() ) { 
		$parentid = get_queried_object_id();
		$args = array(
			'parent' => $parentid
		);
		$terms = get_terms( 'product_cat', $args );
		if ( $terms ) { 
			echo '<ul class="product-cats">';
				foreach ( $terms as $term ) {
					echo '<li>';                 
					echo '<a href="'.esc_url( get_term_link($term) ).'" class="'.$term->slug.'">';         
					woocommerce_subcategory_thumbnail($term);
					echo '<h3>'.$term->name.'</h3>';
					echo '</a>';

					global $post; // !Обязательно заглобалить
					echo '<ul class="products">';
						$args = array(
							'post_type' => 'product',
							'posts_per_page' => 20,
							'product_cat' => $term->slug
						);
						$myposts = get_posts($args);
						foreach( $myposts as $post ) {
							setup_postdata($post);
							get_template_part('solus-product');
						}
						wp_reset_postdata();
					echo '</ul>';
				}
			echo '</ul>';
		}  
	}
}
add_action( 'woocommerce_before_shop_loop', 'tutsplus_product_subcategories', 61 );

Обращаю внимание на строку get_template_part(‘solus-product’); в этом шаблоне содержится стандартный вывод товара WC

<li <?php wc_product_class(); ?>><span> <?php do_action('woocommerce_before_shop_loop_item'); do_action('woocommerce_before_shop_loop_item_title'); do_action('woocommerce_shop_loop_item_title'); do_action('woocommerce_after_shop_loop_item_title'); do_action('woocommerce_after_shop_loop_item'); ?> </span></li>

Плагины

Nested Category Layout стоимость 79$ (19.19.2018)

Вывод миниатюры категории произвольного размера

<?php global $wp_query; 
$cat = $wp_query->get_queried_object(); 
$thumbnail_id = get_term_meta( $term->term_id, 'thumbnail_id', true );  
$image = wp_get_attachment_url( $thumbnail_id );  
echo "<img src='{$image}' alt='' />";  ?>

Если использовать шаблон product-cat-list.php, то первые две строки необязательны.

Поделиться в соц. сетях:

  • Похожие записи
  • Комментарии
  • Вложения
Новинка (товар NEW полем)

Новинка (товар NEW полем)

Ранее были рассмотрены варианты добавления лэйбла New полуавтоматическим способом (последние созданные товары, либо по времени от текущего), либо назначением метки NEW. Здесь разберем как сделать данный функционал полем и какие Читать далее »

/
Вариативный товар

Вариативный товар

Вариативный товар — один из типов товаров плагина интернет-магазина Woocommerce. Суть вариативного товара в том, что мы создаем несколько вариантов исполнения одного товара (размер, цвет, емкость и т.д.), и в Читать далее »

Общая библиотека мультисети

Общая библиотека мультисети

При создании сети (multisite) сайтов возникла проблема с медиабиблиотекой. Проблема состояла в том что главный сайт уже долгое время функционирует, на нем более 500 товаров с несколькими изображениями в каждом. Читать далее »

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

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

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