Выводим все категории товаров на страницу в случайном порядке

Для вывода всех категорий товаров на страницу в случайном порядке и ограниченным количеством воспользуемся моим примером:

Код

			<div class="container-001">
				<div class="container-001-content">
					<p class="container-001__maintext">КАТЕГОРИИ</p>
					<div class="container-001__items">
						
			<?php
			$max = 6; //number of categories to display
			$args = array(
				'taxonomy' => 'product_cat',
				'orderby'       => 'none',
				'order'         => 'ASC',
				'parent'         => 0,
				'exclude'         => 15,
				'hide_empty' => false
			);
			$product_categories = get_terms( $args );
			// Random order
			shuffle($product_categories);
			// Get first $max items
			$product_categories = array_slice($product_categories, 0, $max);
						
			$count = count($product_categories);
			if ( $count > 0 ){
				foreach ( $product_categories as $product_category ) {
					$thumbnail_id = get_woocommerce_term_meta( $product_category->term_id, 'thumbnail_id', true );
						?>
						
						<div class="container-001__items-itm">
							<a class="container-001__items-itm-linktext" href="<? echo get_term_link( $product_category ); ?>"><? echo $product_category->name; ?></a>
							<a class="container-001__items-itm-linkimg" href="<? echo get_term_link( $product_category ); ?>">
								<img class="container-001__items-itm-linkimg-img" src="<?php echo wp_get_attachment_url( $thumbnail_id );?>" alt="<? echo $product_category->name; ?>">
							</a>
						</div>

						<?
				}
			}
			?>

					</div>
				</div>
			</div>

Этим же примером можно выводит категории на любую страницу сайта. Вот так:

Код

			<div class="container-001">
				<div class="container-001-content">
					<p class="container-001__maintext">КАТЕГОРИИ</p>
					<div class="container-001__items">
						
			<?php
			$args = array(
				'taxonomy' => 'product_cat',
				'orderby'       => 'none',
				'order'         => 'ASC',
				'parent'         => 0,
				'number'         => 6,
				'exclude'         => 15,
				'hide_empty' => false
			);
			$product_categories = get_terms( $args );
						
			$count = count($product_categories);
			if ( $count > 0 ){
				foreach ( $product_categories as $product_category ) {
					$thumbnail_id = get_woocommerce_term_meta( $product_category->term_id, 'thumbnail_id', true );
						?>
						
						<div class="container-001__items-itm">
							<a class="container-001__items-itm-linktext" href="<? echo get_term_link( $product_category ); ?>"><? echo $product_category->name; ?></a>
							<a class="container-001__items-itm-linkimg" href="<? echo get_term_link( $product_category ); ?>">
								<img class="container-001__items-itm-linkimg-img" src="<?php echo wp_get_attachment_url( $thumbnail_id );?>" alt="<? echo $product_category->name; ?>">
							</a>
						</div>

						<?
				}
			}
			?>

					</div>
				</div>
			</div>

 где "number" - это количество выводимых записей, "exclude" - исключить категорию от вывода, "parent" - вывести только верхний уровень категорий, "number" - ограничить количество выводимых категорий.

О других параметрах get_terms написано на сайте wp-kama.

Так же с моим портфолио можно ознакомиться на любой из представленной социальной сети, на своих страницах я публикую посты о своих работах, заданиях и целях.

Для связи со мной можно воспользоваться любой социальной сетью,
или написать на почту:

С моим резюме можно ознакомиться по ссылке:

© 2020-2024 Портфолио Юдина Александра г.Пенза. Все права защищены