Отображение товаров из категорий в WooCommerce
Я хочу отобразить миниатюры товаров из нескольких категорий на странице, но у меня возникли трудности с доступом к категориям, так как результат пустой. Есть ли что-то неправильное в моем коде?
$args = array(
'per_page' => '12',
'category_name' => 'travel',
'orderby' => 'title',
);
print_r($args); // ничего не выводится, как и категории
$query = new WP_Query( $args );
if( $query->have_posts()) : while( $query->have_posts() ) : $query->the_post();
print_r($args); // ничего не выводится, как и категории
// хочу отобразить миниатюру
endwhile;;
endif;
Вы передаёте неправильные ключи массива в $args. Сделайте вот так:
$args = array(
'posts_per_page' => '12',
'product_cat' => 'lead-generation',
'post_type' => 'product',
'orderby' => 'title',
);
$query = new WP_Query( $args );
if( $query->have_posts()) : while( $query->have_posts() ) : $query->the_post();
the_post_thumbnail('full');
//хочу вывести миниатюру записи
endwhile;
endif;
Ключа per_page не существует, используйте вместо него posts_per_page.
Таксономия категорий WooCommerce имеет слаг 'product_cat'. Параметр 'category_name' предназначен для обычных записей. Вам нужно указать тип записи WooCommerce, в данном случае это product.
ничего не выводится или отображается. если я сделаю print_r($args), массив возвращает тот же код, что и показано выше.
localhost
вы изменили категорию товара на ваш slug категории? и если вы делаете print_r($args), массив всегда выводит те же ключи и значения массива.
Rahil Wazir
как узнать, какие параметры передавать в args, мне нужно смотреть в базу данных? например, product_cat
localhost
Ни за что. Попробуй погуглить, это приведёт тебя к ссылке.
Rahil Wazir
Для фильтрации товаров с 3 продуктами и заголовком "Рекомендуемые":
$args = array(
'post_type' => 'product', // Тип записи: товар
'posts_per_page' => 3, // Количество товаров на странице
'product_cat' => 'Featured', // Категория товаров: Рекомендуемые
'order_by' => 'title', // Сортировка по заголовку
);