Умный фильтр (bitrix:catalog.smart.filter) - поддержка работы в корне каталога (без указания раздела)

Рейтинг: 55.6817  
Внедрено
Предложил Пользователь 3308 23.04.2013 06:10:06

Умный фильтр (bitrix:catalog.smart.filter) - поддержка работы в корне каталога (без указания раздела)

Срочно нужно! Суть проблемы в том, что если мы находимся в корне инфоблока (не зашли в раздел) то во всплывашке:


всегда будет ошибочно писаться что товаров НЕ найдено.
Рейтинг: -10.8692  
Ответил 01.06.2015 11:30:37
Внедрено в 15.5 релизе. Спасибо за идею и комментарии!

Рейтинг: 8.1138  
Пользователь 141993 24.05.2013 08:25:35
Без указания раздела Умный фильтр возвращает 0, как количество найденных элементов.
Рейтинг: 0.4017  
Пользователь 3308 26.07.2013 12:29:57
Наш клиент не использует разделы -- все товары лежат в корне инфоблока, такая у него архитектура торгового каталога: http://im24.ru/smallhometech/toasters/

в итоге -- после нажатия "Фильтровать" стандартный компонент не отображает количество найденных товаров :(( Очень ждем когда Битрикс это пофиксит.
Рейтинг: 0.9358  
Пользователь 34077 09.08.2013 00:39:14
так то фиксится в принципе просто, в component.php bitrix:catalog.smart.filter после этого (у меня 252 строка)
if(isset($_REQUEST["ajax"]) && $_REQUEST["ajax"] === "y")
{
   $arFilter = $this->makeFilter($FILTER_NAME); 
вставляем строку, что то типа:
if($arFilter[SECTION_ID]==0) unset($arFilter[SECTION_ID]); 
Рейтинг: 0.1377  
Пользователь 176972 24.08.2013 08:10:47
Дмитрий, это конечно, но: а) костыль, б) затрётся при обновлении ядра.

все товары лежат в корне инфоблока
Сурово, но действительно бывает. Но даже без этого: есть ссылка на каталог товаров, где выводятся все товары инфоблока - тоже сплошь и рядом. И тут тоже критична возможность использовать фильтр.
Рейтинг: 9.4959  
Пользователь 93386 04.09.2013 09:07:55
Скачайте "Умный фильтр +" и посмотрите как там это сделано.  
Рейтинг: 0  
Пользователь 154481 06.02.2014 20:08:59
Я правильно понимаю что клиент не заходя в разделы может отфильтровать любой нужный товар? Поясните пжалста!)
Рейтинг: 0.0779  
Пользователь 150765 19.02.2014 14:32:26
Я вообще не понимаю, почему Разработчики  сразу не сделали возможность размещения фильтра в любом месте, независимо от каталога. Уважаемые разработчики сделайте "умный фильтр" действительно умным и независимым от компонента. Я столкнулся с проблемой, что нельзя выбрать сразу несколько значений разных свойств (бред)
Рейтинг: 0.503  
Пользователь 217302 17.07.2014 16:09:06
Больше года прошло. До сих пор на согласовании? Я не говорю про аж добавление галочки в настройках компонента (типа SHOW_ALL_W0_SECTION) :D Добавить строчку в компонент...
Из-за этого приходится снимать компонент с обновлений, перенося его в свое адресное пространство.
Рейтинг: -0.3727  
Пользователь 171661 18.07.2014 08:51:41
А мне вот наоборот нужно убрать его из catalog.section.list чтобы он там вообще не показывался. Кто знает как его убрать? HELP!
Рейтинг: 1.7918  
Пользователь 3308 18.08.2014 20:38:10
 > Больше года прошло. До сих пор на согласовании?

Кажется сейчас стал показывать количество элементов, которые лежат в корне инфоблока. Но, если при этом на странице включен вывод элементов из подразделов -- их он не видит. Например, отключаем все параметры фильтра -- он должен показать обще число товаров включая из подразделов, а он видит только 2 корневых, скриншот: http://screencast.com/t/gxbsI2hn6

Правки вносятся так медленно, что демотивируют вообще на сайт идей писать. Минутная правка -- 1 год, еще одна минута -- еще 1 год..

Мы используем партнерскую разработку http://marketplace.1c-bitrix.ru/solutions/kombox.filter/ Пока Александр мотивирован и очень оперативно наращивает функционал, что дальше будет -- посмотрим..
Рейтинг: 0.8629  
Пользователь 94272 19.01.2015 15:50:54
98 голосов "за", ни одного против и все еще на голосовании! Зачем тогда вообще этот сайт идей о_О
Рейтинг: 0.7891  
Пользователь 71554 30.01.2015 18:35:34
Даёшь фильтрацию по всему иб без указания раздела!
Рейтинг: 0.2508  
Пользователь 224396 27.03.2015 15:26:49
Проблема так и не решена ... :evil:
Рейтинг: 2.0472  
Пользователь 240555 21.10.2015 09:32:47
Поддержку ЧПУ забыли добавить что ли??
Раздел не указан, фильтрация работает благодаря "SHOW_ALL_WO_SECTION" => "Y", а ЧПУ нет - снова URL с get-параметрами.
Рейтинг: 2.2643  
Пользователь 60622 19.11.2015 18:27:01
вроде бы идея в статусе "внедрена", но у меня по прежнему, если не передать в компонент привязку к разделу, результат поиска выдает 0 :(
Рейтинг: 1.9825  
Пользователь 13767 24.01.2016 11:44:35
Внедрено, да не до конца - при попытке отфильтровать в корне каталога в режиме ЧПУ - 404 ошибка
Рейтинг: 2.0538  
Пользователь 137872 07.02.2016 19:22:17
Ну да, при включенном ЧПУ требует код раздела. И если ты в корне каталога, то в $arResult каким-то чудным образом оказывается группа. И в самом компоненте все построено так, что при включенном ЧПУ ему нужен SECTION_ID

При том, если ЧПУ отключить - фильтр работает из корня каталога - вопросов нет. А с ЧПУ никак :(
Рейтинг: 2.2523  
Пользователь 139040 10.04.2016 18:51:55
Почему написано внедрено, если не работает? До сих пор не фильтрует если раздел не указан.
Рейтинг: 0.5347  
Пользователь 168181 19.05.2016 21:26:20
Аналогичная проблема и вроде достаточно простая задача.
Рейтинг: 0.2615  
Пользователь 125357 02.06.2016 11:45:16
У меня нету в корне товаров, но я хочу что бы в корне каталога (/catalog/) фильтр работал , а он выдает сейчас "0 товаров" . Как это исправить ? :evil:
Рейтинг: 3.9887  
Пользователь 125357 02.06.2016 16:15:02
НЕОБХОДИМО ФИЛЬТРУ ДОБАВИТЬ ПАРАМЕТР  "SHOW_ALL_WO_SECTION" => "Y"    Но  работает только без ЧПУ , то есть в режиме когда фильтр по GET запросам работает !!!
Рейтинг: 0  
Пользователь 171660 02.06.2016 16:19:27
Даже без ЧПУ, если указан код цены, фильтр выдаёт 0 при этом работает
Рейтинг: 5.1785  
Пользователь 989105 04.03.2017 13:35:24
Чтобы работало в корне с включенным ЧПУ в комплексном каталоге
в sections.php до вызова умного фильтра добавить
if(empty($arResult["VARIABLES"]["SMART_FILTER_PATH"])){
$re = '/^\/.*\/filter\/(.*)\/apply\//';
$str = Bitrix\Main\Context::getCurrent()->getRequest()->getRequestedPage();
preg_match($re, $str, $matches);
$arResult["VARIABLES"]["SMART_FILTER_PATH"] =$matches[1];
}

ну а в вызове умного фильтра
"SMART_FILTER_PATH" => $arResult["VARIABLES"]["SMART_FILTER_PATH"],
Рейтинг: -1.7475  
Пользователь 155612 10.03.2017 12:07:53
Вот только не в sections.php, а в section.php.
И добавить условие срабатывания:

if ( preg_match($re, $str, $matches) ) {
 $arResult["VARIABLES"]["SMART_FILTER_PATH"] = $matches[1];
 $arResult["VARIABLES"]["SECTION_CODE_PATH"] = "";
 $arResult["VARIABLES"]["SECTION_CODE"] = "";
}
Рейтинг: 0  
Пользователь 472229 27.03.2017 08:04:32
Вот только не в sections.php, а в section.php.
И добавить условие срабатывания:
условие, можно..
но вот именно sections а не section. в случае если каталог имеет разделы.
Рейтинг: 0.2238  
Пользователь 229397 28.03.2017 10:43:22
Ситников Александр
подскажите пожалуйста, если не сложно, какие параметры у вас для случая если разделы есть? интересует именно - используете ли SHOW_ALL_WO_SECTION, BY_LINK ?
SMART_FILTER_PATH каким указывать для параметров комплексного компонента?
сейчас у меня #SECTION_CODE_PATH#/filter/#SMART_FILTER_PATH#/apply/
при этом выходит 404 ошибка, и никак не могу победить..
Страницы: 1  2