@Qnex

Как показать похожие товары по категории и по тегу на странице товара Woocommerce?

Добрый день,
в WooCommerce нужно вывести похожие товары по тегу, который задается при заполнении и заранее не известен, то есть просто в коде я его указать не могу. Товары у которых будет этот тег находятся в разных категориях, всего их может быть 15-20.
Планирую отображать картинки с названием похожих товаров в карточке продукта в табах, где каждая вкладка относится ко своей категории. Табы добавил просто в конец файла /wp-content/themes/моя-тема/woocommerce/single-product/product-image.php чтобы были под большим фото - пишу это потому что не стандартное место для related products и встроенный шорткод Woocommerce [products tag="hoodie"] там не работает, хотя внизу в описании все показывает (пробовал для проверки).

Нашел несколько вариантов подобного кода, задача встречается, но ни один для меня не сработал. Вот самый как мне кажется близкий вариант, но скорее всего устарел:
<?php
$product_tag = get_post_meta($post->ID, 'test1', true);
$args = array('post_type' => 'product', 'product_cat' => 'accessories', 'test1' => $product_tag );
$postslist = get_posts( $args );
foreach ($postslist as $post) : setup_postdata($post); ?>
<ul>
<li><?php the_title(); ?></li>
</ul>
<?php endforeach; ?>

test1 - это название кастом поля куда добавлял тег, accessories - сюда категорию для этого таба
Но у меня этот код отображает список с одинаковыми названиями текущего продукта.
Сам ни разу не программист, если кто-то поможет буду благодарен, могу оплатить время.
  • Вопрос задан
  • 1152 просмотра
Пригласить эксперта
Ответы на вопрос 1
deniscopro
@deniscopro Куратор тега WordPress
WordPress-разработчик, denisco.pro
Добрый.

Вот здесь
$args = array('post_type' => 'product', 'product_cat' => 'accessories', 'test1' => $product_tag );

попробуйте
$args = array('post_type' => 'product', 'meta_key' => 'test1', 'meta_value' => $product_tag );

Что-то меняется?

P.S. accessories пока убрал. У Вас может быть один и тот же тег в разных категориях?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы