Как отфильтровать все товары по метке products_tag (WooCommerce)

23 нояб. 2012 г., 17:07:30
Просмотры: 21K
Голосов: 3

Я пытаюсь получить миниатюры только определенных товаров в WooCommerce, используя products_tag,

этот код показывает все товары:

<ul class="products">
<?php
$args = array( 'post_type' => 'product', 'posts_per_page' => 5 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>



<?php global $post; echo "<p id = 'id_name'>" . $thePostID = $post->ID. " </p>";    ?>


<?php if (has_post_thumbnail( $loop->post->ID )) 
echo  get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); 
else echo '<img src="'.$woocommerce->plugin_url().'/assets/images/placeholder.png" alt="Заглушка" width="'.$woocommerce->get_image_size('shop_catalog_image_width').'px" height="'.$woocommerce->get_image_size('shop_catalog_image_height').'px" />';
?>




<?php endwhile; ?>
</ul><!--/.products-->

Я пытаюсь добавить больше аргументов в массив, вставляя 'product_tag', но это не работает:

 $args = array( 'post_type' => 'product', 'posts_per_page' => 5, product_tag => 'shoes' );

Как мне показать только товары с меткой shoes?

Спасибо за помощь

0
Все ответы на вопрос 2
1

Я нашёл ответ, это была опечатка, нужно указать

'product_tag' => 'ваш_тег_который_используете'

и тогда всё работает как часы

24 нояб. 2012 г. 15:12:58
Комментарии

Можете ли вы показать точный запрос? Мне нужно получить товары, у которых добавлен тег. Я использую тему Blurb.

Ashish v Ashish v
24 июл. 2020 г. 14:23:26
0

Это упоминается в документации

$args = array(
    'tag' => array( 'excellent', 'modern' ),
);
$products = wc_get_products( $args );

https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query

6 февр. 2023 г. 10:38:29