На сайт импортированы товары из 1С. При импорте автоматически создались атрибуты. Необходимо вывести список товаров по этому кастомному атрибуту. Названия атрибутов, на русском, пытался менять на английский - не помогает. Мучался с шорткодом [product_attribute attribute="attr_name" filter="value"] - решения не нашёл. Хотя бы покажите в какую сторону смотреть и искать. Варианты с платными плагинами не предлагать.
Вот как я пытался делать
$attribute = 'типоразмер';
$values = '215/40 R17';
$per_page = '12';
$columns = '3';
$orderby = 'title';
$order = 'desc';
// Default ordering args
$ordering_args = $woocommerce->query->get_catalog_ordering_args( $orderby, $order );
// Define Query Arguments
$args = array(
'post_type' => 'product',
'post_status' => 'publish',
'ignore_sticky_posts' => 1,
'orderby' => $orderby,
'order' => $order,
'posts_per_page' => $per_page,
'meta_query' => array(
array(
'key' => '_visibility',
'value' => array('catalog', 'visible'),
'compare' => 'IN'
)
),
'tax_query' => array(
array(
'taxonomy' => $attribute,
'terms' => explode(",",$values),
'field' => 'slug',
'operator' => '='
)
)
);
$products = new WP_Query( $args );
print_r($products);
if ( $products->have_posts() ) {
echo '<ul>';
while ( $products->have_posts() ) {
$products->the_post();
echo '<li>' . get_the_title() . '</li>';
}
echo '</ul>';
} else {
// no posts found
}
и вот такой вариант пробовал
echo do_shortcode("[product_attribute attribute='Типоразмер' filter='215/40 R17']");