— ширина со значениями например 20, 40, 60.
В какой-то момент товары с шириной 40 раскупают, их нет.
...но если мы перейдём на урл, который ранее был сгенерён, мы увидим все товары раздела.
Даже если сейчас рабочий урл умного фильтра отредактировать так, чтобы он показал свойство с несуществующим значением, например:
/filter/prop_2033-is-c624/apply/ = реальный, рабочий
/filter/prop_2033-is-c624777/apply/ = "сломанный"
...мы увидим все товары.
Я как бы способ наковырял, но чота у меня сомнения, потому что в чате с такой болью вопросов не нахожу.
То ли я не в том окопе, то ли проблема какая-то уникальная
🤔
наковыряли не проверку $GLOBALS[$arParams['FILTER_NAME']] случаем? после компонента фильтра
у меня была такая задача, ничего лучше сравнения $arResult['SMART_FILTER_PATH'] и того, что попадает в фильтр для catalog.section не придумал.
В том-то и дело, что он не пустой. Просто в нём нет ни =PROPERTIES ни цен ни количества
Если не засну, попробую смоделировать. Товары, которых нет - неактивные, или недоступные или еще какой признак?
Ммм. Не совсем так. Задача в контексте группы товаров а не конкретного товара. Были товары с шириной 40 и не стало их. Умный фильтр ведёт себя так: отбирает все товары, берёт их в одну руку. В другую — все свойства. Прогоняет через fillVariants, заполняя свойства актуальными значениями из ELEMENTS. Потом дело доходит до заполнения фильтра $GLOBALS[...FILTER_NAME...], который заполняется только стандартными полями и не получает ни одного специфического фильтра (ни =PROPERTY ни PRICE ни CATALOG...) ...что равняется "все элементы раздела"
Вот сейчас уже не понял. Есть умный фильтр. Есть ссылка из него с отбором по конкретному значению конкретного свойства. И она то отбирает правильные товары, то ведет себя как будто ее нет. Так? Что нужно сделать с товарами, чтобы они "закончились"? Т.е. как воспроизводить? И да, фасета используется? И это простые товары или предложения?
Один из кейсов - комплексному компоненту catalog ставим настройки "Не отображать недоступные товары" и "Не отображать недоступные предложения". Выставляем фильтр, получаем, допустим, 1 товар с 3 предложениями. Этим предложениям выставляем количество 0 при включенном кол. учете. Обновляем страницу и получаем все товары
Т.е. недоступные. Фасета включена?
Фасета, товаров с указанным свойством в разделе нет. Зайдём с другой стороны. Имеем фильтр-урл, например "Новинки": .../filter/hit-is-new/apply/ Дописываем что угодно вместо new, например: /filter/hit-is-notnew/apply/ ...и получаем все товары раздела
без фасеты - такая же история
вот я про этот кейс говорил, что сравнивал со SMART_FILTER_PATH . В случае, когда значение такое есть в принципе - только сейчас увидел, что все показывает
Я запилил в шаблоне умного фильтра проверку: если у нас фильтр-урл (то есть предполагается, что что-то таки отфильтруется), а ни один параметр на панели не дёрнут (не выделенного чекбокса ни сдвинутого слайдера...), — наступает страховой случай (у меня заказчик попросил 301 редирект). Вот я и сижу и чешу репу: выставлять это решение на канале или это чота аномальное
мое добавьте тоже, хоть в телик попаду))
👌 У меня пока всё свежее, проверю сперва ))
"у меня заказчик попросил 301 редирект" - ну да, поисковики на 404 вроде плохо реагируют, особенно, если много сразу появляется
Ну то есть когда по фильтру ничего не найдено то отдаются все товары?
решил у нас проверить - 301. а на чистой установке - все товары раздела. кто-то постарался тоже)))
Нет. Это разные ситуации. Когда фильтр реальный, но товаров ноль — это другое
Там чуть другое: у нас хитрое фильтр чпу и урлы прописаны как ссылки, даже в карточках товаров для перелинковки. И чтобы 301 а потом, когда появился товар, — 200
Ну фильтр реальный но товаров по нему нет)
Обсуждают сегодня