Умный фильтр 1С-Битрикса

10
Битрикс. Умный фильтр

Upload: vladimir-zavertaylov

Post on 14-Jun-2015

2.186 views

Category:

Technology


7 download

DESCRIPTION

Презентация доклада с HolyWarModeOn: принцип работы умного фильтра Битрикса, вероятные проблемы, подводные камни

TRANSCRIPT

Page 1: Умный фильтр 1С-Битрикса

Битрикс.Умный фильтр

Page 2: Умный фильтр 1С-Битрикса

Возможности● показывает общие для всех разделов свойства и свойства, присущие только текущему

разделу (и вложенным). Например, общие свойства - “бренд”, “пол”. Для раздела часов будут показаны дополнительно свойства “механизм”, “циферблат”, а для раздела ручек - “система заправки”;

● скрывает ненужные параметры поиска;● поддерживает SKU;● для цены и числовых свойств выводит ползунок, для всех остальных свойств использует

чекбоксы;● поддерживает шаблоны: .default , visual_horizontal , visual_vertical ;● поддерживает Яндекс Острова;● возможность вынести форму фильтра во включаемую область.

Page 3: Умный фильтр 1С-Битрикса

Ограничения● работает только с чекбоксами, не знает, что такое селект. Из-за этого фильтр может

превратиться в портянку;● генерирует чудовищные name типа arrFilter_6_1284372584 . Изменяемый параметр в

этом name только название фильтра. То есть о понятном url можно забыть.● по слухам некорректно работает с ценами в разных валютах: 10 долларов меньше чем 11

рублей;● проблемы с производительностью;● говорят, что без ухищрений не работает с числом свойств более 180;● нельзя изменить логику работы. Показывает товары, у которых есть все выбранные

параметры (AND);● нет фильтра по категориям раздела.

Как переделать checkbox в select ● http://dev.1c-bitrix.ru/community/webdev/user/94272/blog/10851/● http://dev.1c-bitrix.ru/community/forums/messages/forum6/topic61840/message324410/#message324410

Page 4: Умный фильтр 1С-Битрикса

Немного статистикиСтатистика вывода одного раздела на city-pets с 5-ю свойствами без кэша с кэшем

Откуда столько запросов:➔ получает все свойства инфоблока/раздела (если находимся в разделе);➔ по каждому свойству отдельным запросом получает все значения свойства;➔ если есть SKU, повторяет п. 1 и 2 для инфоблока SKU;➔ получает все элементы инфоблока/раздела с примененным фильтром;➔ если есть SKU, получает элементы инфоблока SKUс примененным фильтром;➔ если находимся в разделе, получает данные раздела.

Page 5: Умный фильтр 1С-Битрикса

Настройка. Шаг 1Чтобы заставить умный фильтр работать, необходимо предварительно настроить свойства инфоблока. Рекомендуется настраивать свойства через раздел “Магазин”.

Настройка каталогаПервым делом в настройках каталога указываем свойства, присущие всем товарам.

Page 6: Умный фильтр 1С-Битрикса

Настройка. Шаг 2Настройка разделовЗадаем каждому разделу необходимые свойства

Здесь для редактирования доступны только свойства, у которых установлен чекбокс “Показывать в умном фильтре”. Остальные свойства и свойства, общие для всех разделов, будут недоступны

Page 7: Умный фильтр 1С-Битрикса

Настройка. Шаг 3Настройка формы добавления товараЧтобы показывались свойства текущего раздела, а не портянка всех имеющихся.Из правой колонки удаляем все свойства и заголовок “--Значения свойств”.Теперь будут отображаться общие свойства и свойства выбранного раздела.

Данная настройка поддерживается только в разделе “Магазин”.

Page 8: Умный фильтр 1С-Битрикса

Настройка. Шаг 4Вывод фильтраПосле манипуляций в админке, добавляем код вызова компонента в каталоге перед компонентом вывода элементов.

Page 9: Умный фильтр 1С-Битрикса

Результат

Page 10: Умный фильтр 1С-Битрикса

Подводные камниПосле манипуляций с контентом, фильтр может поймать глюк. Пример: Были удалены некоторые значения свойства, но у товаров привязки остались. Как следствие пустые значения при выводе.