• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Решено "Подружить" WooCommerce Product Filter и Display Product - Multi-Layout for WooCommerce

Moonlight31

Опытный
Доброго времени суток!

Было необходимо изменить отображение товара. Воспользовался плагином Display Product - Multi-Layout for WooCommerce

http://skladinzhiniring.ru/shop-grid/
Добавил 16 тестовых товаров. На данной странице вывел их в виде сетки

Теперь необходимо добавить фильтры, к этой странице. Воспользовался плагином WooCommerce Product Filter

Его тоже вывел через шорткод для данной страницы.

Теперь, отмечая необходимые параметры и нажимая кнопку применить, поиск выдается ниже товаров и в стандартном виде. Как быть?

Можно через product filter выводить на другую страницу. Или выводить на эту же, но отказаться от display product и поменять стиль стандартного отображения товаров

Спасибо за любой совет))
 
Последнее редактирование:

Moonlight31

Опытный
Решил выводить результаты применения фильтра на другой странице. Надо теперь только изменить вывод товара в каталоге: добавить атрибуты(высота,ширина,количество полок)

Хотя с другой стороны, если добавлять эти атрибуты в товары в каталоге, то display product multi-layout нужен только для предварительного просмотра. Как быть?))
 

Moonlight31

Опытный
Отказался от плагина display product multi-layout , вынес все необходимые атрибуты на страницу каталога.
Добавил в functions.php

Для вывода атрибута:
Код:
function my_template_loop_product_title(){
    global $product;
    echo '<h3 itemprop="name" class="product_title entry-title">';
    $versionvalues = get_the_terms( $product->id, 'pa_vhshhg');
   
    foreach ( $versionvalues as $versionvalue ) {
         echo $versionvalue->name;
    }
    echo '</h3>';
}
add_action( 'woocommerce_shop_loop_item_title', 'my_template_loop_product_title', 10 );

Для добавления кнопки Подробнее
Код:
add_action('woocommerce_after_shop_loop_item','replace_add_to_cart');
function replace_add_to_cart() {
global $product;
$link = $product->get_permalink();
echo do_shortcode('<a href="'.$link.'" class="button addtocartbutton">Подробнее</a>');
}
 
Сверху Снизу