@easycode
не боюсь задавать глупые вопросы ))

"Рекомендуемые товары" в WooCommerce из той же категории и с тем же значением атрибута — как?

Как сделать так, чтобы на странице товара (в карточке товара) в блоке Рекомендуемые товары отображались товары из той же категории и с одинаковым значением определенного атрибута товара?

Например, для ювелирного магазина:
у каждого товара есть атрибут: металл (серебро, золото и т.д.)
допустим на странице товара из категории "Серьги" у которого металл = серебро, должны в блоке "Рекомендуемые" отображаться товары из этой же категории "Серьги" и с таким же значением атрибута металл = серебро.

Я наверное готового решения такого не найду? Нужно кодить самому функционал?
  • Вопрос задан
  • 1412 просмотров
Пригласить эксперта
Ответы на вопрос 2
@petrmish
Вот php, по сути работает на shortcod woo. Думаю... вносить комментарии по применению бессмысленно, все и так очевидно вывод всего по цвету, модели. Тут два примера с заголовком и без. Хотелось-бы отметить, он выводит и текущий товар. Код учитывает только атрибуты.
function design_shortcode() {

$terms = get_the_terms($post->ID, 'pa_design');
if ($terms && !is_wp_error($terms)) {
    foreach ($terms as $term)
        $design_name = $term->name;
        $design_slug = $term->slug;
}

if ($design_name != ''){
    echo do_shortcode( '[product_attribute attribute="design" filter="'.$design_slug.'" per_page="6" columns="6" orderby="rand" order="rand"]' ); }
}
add_shortcode('alldesing', 'design_shortcode');

function primary_color_shortcode() {
    
$terms = get_the_terms($post->ID, 'pa_primary-color');
if ($terms && !is_wp_error($terms)) {
    foreach ($terms as $term)
        $primary_color_name = $term->name;
        $primary_color_slug = $term->slug;
}

if ($primary_color_name != ''){
    echo '<h3 class="main-title uppercase" align="left">Другие товары в цвете '.$primary_color_name.'</h2>'
    echo do_shortcode( '[product_attribute attribute="primary-color" filter="'.$primary_color_slug.'" per_page="6" columns="6" orderby="rand" order="rand"]' ); }
}
add_shortcode('allprimarycolor', 'primary_color_shortcode');
Ответ написан
@its2easyy
Мб попробовать получить категорию текущего товара и значение нужного атрибута а потом запустить wp_query с этой же категорией и ограничением по атрибуту и с нужным posts_per_page, а потом вывести нужные товары
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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