WooCommerce: Фильтр по атрибуту вариативных товаров которых нет в наличии

Владислав Белецкий
Владислав Белецкий .
Категория:
Комментариев: 0

Задача. В WooCommerce есть проблема со стандартным виджетом фильтра по атрибуту и вариативными товарами. Когда в вариативном товаре нет в наличии какого-то варианта по атрибуту, то при фильтрации по это опции все равно товар отображается. Например, есть товар у него и несколько вариаций по атрибуту «размер»: 36, 40, 43. Если вариант 42 закончился и его нет в наличии, то при фильтрации по размеру 42 пользователь все равно может увидеть этот товар, хотя его нет в наличии.

Решение 1. Самое простое — это скрыть из Магазина товары которых нет в наличии в настройках Woocommerce — Настройки — Товары — Запасы — Видимость закончившихся (Спрятать отсутствующие товары из каталога) (Изображение 1).

Спрятать отсутствующие товары из каталога
Изображение 1: Спрятать отсутствующие товары из каталога Woocommerce

Но такой вариант не всегда уместен, т.к. товары скроются совсем из каталога, а не только при фильтрации. И с точки зрения SEO, лучше оставлять все товары.

Решение 2. Чтобы скрыть вариативные товары по опции которой нет в наличии именно при фильтрации, в functions.php вставляем Код №1. В нем нужно заменить xxx-my-attribute на свой атрибут (слаг атрибута? Изображение 2).

Код №1: Woocommerce — cкрыть при фильтрации по атрибуту xxx-my-attribute вариативные товары которых нет в наличии
Слаг атрибута Woocommerce
Изображение 2: Слаг (slug) атрибута товара
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии