UMIhelp

Разработка сайта на UMI.CMS => Макросы UMI.CMS => Тема начата: s.kirill от 04 Августа 2016, 17:31:49

Название: Вывод фильтра в разделах каталога второго уровня.
Отправлено: s.kirill от 04 Августа 2016, 17:31:49
Здравствуйте.

Подскажите пожалуйста направление решения вывода фильтра во вторых уровнях каталога.
Шаблон построен на PHP-шаблонизаторе.
На данный момент фильтр по разделам отображается только на третьем уровне.
$this->render($this->macros('catalog', 'getSmartFilters', array('default', $variables['@pageId'], 0, 1)), 'catalog/smart-filters');

Буду благодарен за любую подсказку.
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: aghigay от 04 Августа 2016, 17:49:43
Может проблема в переиндексации? Возможно, что первый и второй уровень каталога просто не проиндексированы? Тогда фильтра не должно быть ни на PHP, ни на XSLT
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: s.kirill от 04 Августа 2016, 17:57:22
Может проблема в переиндексации? Возможно, что первый и второй уровень каталога просто не проиндексированы? Тогда фильтра не должно быть ни на PHP, ни на XSLT

В настройках каталога Состояние индекса: Проиндексирован. Да и уровень вложенности стоит 9999.
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: aghigay от 04 Августа 2016, 18:02:12
Так а какой именно раздел проиндексирован? Может быть вложенный? А родительские - нет?
Ну и второй вариант - для конкретного уровня вложенности может быть прописан другой шаблон, в котором нет вывода фильтра. Нужно смотреть
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: e.ioffe от 04 Августа 2016, 18:50:05
В файле путь до шаблона/catalog/smart-filters.phtml

добавьте вывод <pre><?php print_r($variables);?></pre>

Так вы увидите, есть ли данные для вывода фильтра в разделах каталога.

Как вариант, на первом и втором уровнях не подключается этот шаблон.
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: s.kirill от 05 Августа 2016, 12:16:51
В шаблоне /catalog/smart-filters.phtml вывод добавил.
Данные отображаются только на третьем уровне.

В принципе решение уже есть, но только на шаблонизаторе XSLT.
http://wiki.umisoft.ru/%D0%92%D1%8B%D0%B2%D0%BE%D0%B4_%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%BE%D0%B2_%D0%B4%D0%BB%D1%8F_%D0%B2%D1%81%D0%B5%D1%85_%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%BE%D0%B2_%D0%BA%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3%D0%B0

Как вот только сделать на PHP, видимо знаний не хватает.
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: aghigay от 05 Августа 2016, 12:31:45
Судя по всему вы пытаетесь выбрать фильтр для товаров, которых нет в указанной категории. Они лежат ниже по категории, а в самой категории их нет. И при этом вы пытаетесь выбрать уровень вложенности 1. Все верно?

Так может надо выбрать уровень вложенности хотя бы 3?

array('default', $variables['@pageId'], 0, 3) вместо array('default', $variables['@pageId'], 0, 1)
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: s.kirill от 05 Августа 2016, 12:36:24
Судя по всему вы пытаетесь выбрать фильтр для товаров, которых нет в указанной категории. Они лежат ниже по категории, а в самой категории их нет. И при этом вы пытаетесь выбрать уровень вложенности 1. Все верно?

Так может надо выбрать уровень вложенности хотя бы 3?

array('default', $variables['@pageId'], 0, 3) вместо array('default', $variables['@pageId'], 0, 1)

Ё мое, как все оказалось проще простого. Спасибо Вам большое:-)
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: s.kirill от 31 Августа 2016, 15:15:04
Судя по всему вы пытаетесь выбрать фильтр для товаров, которых нет в указанной категории. Они лежат ниже по категории, а в самой категории их нет. И при этом вы пытаетесь выбрать уровень вложенности 1. Все верно?

Так может надо выбрать уровень вложенности хотя бы 3?

array('default', $variables['@pageId'], 0, 3) вместо array('default', $variables['@pageId'], 0, 1)

Здравствуйте.

Снова обращаюсь к вам за советом. На втором уровне вложенности фильтр отображается, все хорошо. Вот только если я выбираю одно значение из всех, фильтр блокирует все остальные параметры, которые есть в фильтре. И пишет значение undefined, хотя сам отрабатывает. Использую шаблон demodizzy   
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: aghigay от 18 Ноября 2016, 00:04:26
Предположительно у вас включен адаптивный фильтр.
Речь о параметре isAdaptive = true http://dev.docs.umi-cms.ru/spravochnik_makrosov_umicms/katalog/catalog_getsmartfilters/#sel=10:7,10:9
Попробуйте отключить его и, по идее, фильтр перестанет менять количество позиций.
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: Marebo от 19 Января 2017, 00:39:41
Удалось ли решить проблему?

Та же ситуация, фильтр не срабатывает.

6 уровней вложенности, ни в одном не работает фильтр.
Блокирует, при выборе одного параметра, все остальные параметры и пишет undefined.

Также на php шаблон.

Если есть, кто сможет помочь, то готов оплатить работу.
Название: Re: Вывод фильтра в разделах каталога второго уровня.
Отправлено: e.ioffe от 19 Января 2017, 09:48:55
Цитировать
Если есть, кто сможет помочь, то готов оплатить работу.

Отправьте на почту ioffe@umispec.ru ссылку на страницу с проблемным фильтром.