User Tools

Site Tools


public:moduli:adaptivnye_filtry

Адаптивные фильтры 2

Ключевые отличия от первой версии:

  • Код наконец-то вынесен в отдельный модуль;
  • Добавлен инсталлятор;
  • Аналогичная функциональность по фильтрации реализована для инфосистем;
  • Сделано большое количество оптимизаций в разных местах кода;
  • Реализован новый алгоритм запросов к базе, использующий при построении выборок join к временной таблице вместо предиката IN к массиву идентификаторов, дающий на тяжелых базах ускорение до 10 раз;
  • Для тяжелых интернет-магазинов и инфосистем с большим количеством доп.свойств реализованы два дополнительных режима оптимизации для формирования узла shop_item_properties (informationsystem_item_properties) в xml: первая ограничивает набор выводимых в узле доп.свойств только теми, которые используются для построения фильтров; вторая ограничивает выводимые значения для списочных доп.свойств только теми элементами списков, которые применимы к текущей выборке. В зависимости от конфигурации вашего сайта эти два режима могут давать дополнительное ускорение в 4-5 раз.
  • Упрощено подключение стилей и скриптов в макетах
  • Упрощено подключение вывода фильтров в боковой колонке
  • Упрощена настройка ТДС фильтров, ключевые параметры, влияющие на работу фильтров доступны сразу при редактировании узла структуры, использующего ТДС Расширенных фильтров
  • Переписаны слайдеры;
  • Добавлена возможность выводить на клиенте кастомные всплывающие сообщения о кол-во найденных товаров/инфоэлементов;
  • Изменена политика лицензирования;
  • Оставлена частичная совместимость с фильтрами первой версии. В комплекте с модулем идет набор новых ТДС, новых XSL-шаблонов, образцы кода для вставки в макеты, а также новые клиентский js и css. При переходе с версии 1 на версию 2 ТДС необходимо поменять, остальные же части (XSL, js, css) подойдут и от первой версии;

Увидеть в действии

Демо новой версии фильтров для интернет-магазина можно увидеть на специальном демо-сайте в различных режимах вывода, при работе с ярлыками, модификациями, тегами.

Демо работы с информационными системами можно увидеть на том же сайте в разделе «Услуги».

Системные требования

Модуль предназначен для работы с системой HostCMS версии 6.1.2 и выше*.

Системные требования модуля аналогичны системным требованиям тех версий HostCMS, под которыми он работает, никаких дополнительных требований использование модуля не накладывает.

* Два дополнительных режима оптимизации доступны начиная с версии системы 6.5.6 и выше, в версиях ниже они не включаются, но работу модуля не ломают.

Возможности модуля

Модуль предоставляет одинаковую базовую функциональность для работы с инфосистемами и интернет-магазинами. В силу естественных различий между этими сущностями, фильтры для интернет магазина, в дополнение к базовому набору функций содержат еще дополнительные.

Для информационных систем

  • Функциональность для инфосистем основана на базовом контроллере Informationsystem_Controller_Show, поэтому поддерживает все станадартные режимы и настройки;
  • Легко управляемый вывод элементов из групп и подгрупп: вы просто задаете глубину выборки в настройках узла структуры, все остальное модуль делает сам;
  • Несколько режимов сортировки: по умолчанию, по названию, по возрастанию рейтинга (оценки в комментариях), по популярности (просмотры), и по значениям доп.свойств;
  • Фильтрация по наличию основного изображения у инфоэлементов (большого, малого или любого);
  • Фильтрация по меткам (тегам);
  • Фильтрация по значениям дополнительных свойств, в том числе в сочетании с отбором инфоэлеметов по меткам (тегам);
  • В блоках фильтров при выводе доп.свойств типа «список» отображаются только те значения из списка, которые применимы к инфоэлементам в выборке;
  • В блоках фильтров при выводе доп.свойств типа «число» отображаются минимальное и максимальное значение доп.свойства, которые применимы к инфоэлементам в выборке;
  • Корректный учет ярлыков на инфоэлементы при вычислении фильтров во всех режимах фильтрации и отображения;
  • Простой вывод отдельного блока фильтров в боковой колонке;
  • Оптимизация вывода с помощью временных таблиц, а также два дополнительных оптимизирующих режима при формировании xml;
  • Два режима работы при изменении пользователем параметров фильтров — мгновенная перезагрузка странцы с применением параметров или предварительный подсчет числа подходящих инфоэлементов через быстрый ajax-запрос;
  • Кастомные тексты всплывающих сообщений при отображении результатов ajax-запросов, настраиваются просто в параметрах узла структуры при выборе ТДС Расширенных фильтров.

Для интернет-магазинов

  • Функциональность для интернет-магазинов основана на базовом контроллере Shop_Controller_Show, поэтому поддерживает все станадартные режимы и настройки;
  • Легко управляемый вывод элементов из групп и подгрупп: вы просто задаете глубину выборки в настройках узла структуры, все остальное модуль делает сам;
  • Два режима построения набора разрешенных доп.свойств при выводе из нескольких групп: строгий (только те доп.свойства которые есть у всех товаров в выборке) и не строгий (все доп.свойства, которые есть хотя бы у одного товара в выборке);
  • Несколько режимов сортировки: по умолчанию, по названию, по цене, по наличию, по возрастанию рейтинга (оценки в комментариях), по популярности (просмотры), и по значениям доп.свойств;
  • Фильтрация по основным свойствам — наличие, производитель, продавец, по диапазону цен, по диапазону габаритных размеров (длина, ширина и глубина в отдельности);
  • Фильтрация по наличию основного изображения у инфоэлементов (большого, малого или любого);
  • Фильтрация по значениям дополнительных свойств, в том числе в сочетании с отбором инфоэлеметов по меткам (тегам);
  • В блоках фильтров при выводе доп.свойств типа «список» отображаются только те значения из списка, которые применимы к товарам в выборке;
  • В блоках фильтров при выводе доп.свойств типа «число» отображаются минимальное и максимальное значение доп.свойства, которые применимы к товарам в выборке;
  • Корректный учет ярлыков на товары при вычислении фильтров во всех режимах фильтрации и отображения;
  • Корректный учет модификаций при вычислении фильтров во всех режимах фильтрации и отображения;
  • Настраиваемый режим вывода модификаций и родительских товаров, удовлетворящих условиям фильтра: выводить только родительские товары (даже если фильтру удовлетворяют только модификации), выводить родительские товары и подходящие модификации, выводить только модификации вместо и на уровне родительских товаров, если родительские товары не удовлетворяют условиям фильтра, а модификации удовлетворяют;
  • Корректный учет скидок при фильтрации и сортировке по цене;
  • Корректная обработка товаров с ценами, номинированными в разных валютах, при фильтрации и сортировке по цене;
  • Простой вывод отдельного блока фильтров в боковой колонке;
  • Оптимизация вывода с помощью временных таблиц, а также два дополнительных оптимизирующих режима при формировании xml;
  • Два режима работы при изменении пользователем параметров фильтров — мгновенная перезагрузка странцы с применением параметров или предварительный подсчет числа подходящих инфоэлементов через быстрый ajax-запрос;
  • Кастомные тексты всплывающих сообщений при отображении результатов ajax-запросов, настраиваются просто в параметрах узла структуры при выборе ТДС Расширенных фильтров;
  • Совместимость с Модулем подписки на товары, отсутствующие в наличии.

Лицензионная политика

Модуль «Расширенные фильтры» предназначен для коммерческой реализации заказчикам сайтов, веб-студиям, интеграторам и прочим третьим лицам (далее — Покупатели).

Реализацию модуля могут осуществлять разработчик модуля, а также дилеры, с которыми у разработчика заключено соответствующее соглашение (далее — Дистрибьюторы)

Код модуля привязывается к конкретному экземпляру HostCMS, установленному на сервере. Привязка осуществляется по номеру лицензии системы. При этом, в лицензионной политике не содержится ограничений на количество сайтов и интернет-магазинов, работающих под управлением одного и того же экземпляра системы.

То есть, одна лицензия на модуль выдается на один номер договора на установку системы HostCMS на сервер, и покрывает неограниченное количество сайтов и магазинов на этом экземпляре системы.

Дистрибутив модуля и лицензионный ключ доступны Покупателю после оплаты лицензии, и передаче по электронной почте support@kad.systems Дистрибьютору модуля следующих данных:

  • Логин, к которому привязана лицензия HostCMS;
  • md5-хеш от номера договора;
  • md5-хеш от пин-кода.

В ответ на эти данные, Дистрибьютор предоставляет Покупателю архив с исходным кодом модуля и инструкцию по его установке. Лицензионные ключи будут сгенерированы и встроены в систему автоматически, в момент установки модуля.

Важно При совершении в системе некоторых операций, связанных с Модулем, он время от времени автоматически проверяет корректность лицензионного ключа.

Важно Работы по настройки модуля на сайте (сайтах) Покупателя в состав лицензии не входят, но при необходимости могут быть заказаны у Дистрибьюторов с отдельной оплатой.

Важно Пользователям HostCMS редакции Халява, перед покупкой и установкой Модуля, необходимо получить бесплатную лицензию в Личном кабинете на сайте http://hostcms.ru (в разделе Личный кабинет — Лицензии), а затем внести полученные данные в Центре администрирования системы, в раздел «Сайты» — «Настройки» — «Регистрационные данные».

Обновление в пределах текущей версии

Приобретая модуль версии 2.х вы получаете бесплатные обновления модуля в пределах текущей мажорной версии, т.е. на любую следующую версию ветки 2.х

Обновления между разными мажорными версиями платное. Однако, если модуль обновится на следующую мажорную версию, то вы имеет право на обдновление по льготной цене, в пределах применимости лицензионной политики действующей на обновление.

Установка модуля

Для установки модуля в систему вам нужно:

  1. Развернуть архив на вашем компьютере, и содержимое папки files скопировать по ftp в корень вашей установки HostCMS.
  2. Затем в центре администрирования перейти в раздел «Модули», выбрать в меню «Добавить», в поле название модуля указать Расширенные фильтры в поле путь к модулю указать extendedfilters галочку Активности не включать.
  3. Нажать на применить.
  4. Затем найти этот модуль в списке модулей и зажечь у него лампочку активности.
  5. После этого запустится инсталлятор, который получит лицензионный ключ, выполнит запросы к базе, разложит куда нужно файлы стилей и скриптов, создаст новые разделы в ТДС и в XSL, а также добавит в разделе макеты, код с примерами подключения.

Для подключения фильтров на вашем сайте вам нужно:

  1. В главный макет, в секцию head добавить код, подключающий скрипты и стили фильтров (пример кода появится после установки в разделе «макеты»)
  2. В структуре сайта войти в редактирование раздела нужного узла структуры и сменить ему ТДС и XSL-шаблон каталога товаров (списка инфоэлементов) на те, которые идут в комплекте с модулем.
  3. При необходимости, на этой же странице внести изменения в настройки работы модуля фильтров.
  4. Если вам нужен фильтр сбоку, то вам нужно зайти в редактирование соответствующего макета, и заменить код, который выводит фильтр сбоку, на тот, который идет в примерах макетов вместе с модулем.

Важно Если у вас были какие-то доработки в вашей ТДС магазина, то их нужно будет перенести в ТДС фильтров. Обратите внимание на то, что доработки из вкладки «Код ТДС» скорее всего нужно будет переносить во вкладку «Настройки ТДС», иначе он может работать некорректно (внимательно читайте комментарии в ТДС фильтров).

Важно XSL-шаблоны фильтров не полностью совместимы со стандартными шаблонами «МагазинКаталогТоваров» и «МагазинФильтр», т.к. для работы фильтров необходимо использовать более сложный XML с данными. Но чаще всего достаточно просто скопировать из ваших XSL-шаблонов темплейты, формирующие товары и группы товаров.

Порядок оказания технической поддержки и разрешения спорных вопросов

Модуль предоставляется «Как есть», разработчик не несет ответственности за любой ущерб, полученный покупателем в результате приобретения и/или использования данного модуля.

В состав технической поддержки входит устранение выявленных и стабильно воспроизводимых ошибок в работе Модуля. Устранение таких ошибок производится бесплатно, за исключением следующих случаев:

  • ошибки, возникшие в результате неверных действий интегратоорв, администраторов, веб-мастеров конкретного сайта;
  • ошибки, возникшие в результате нарушения Покупателем вышеизложенной лицензионной политики Модуля.

Разработчик принимает от Покупателей и Дистрибьюторов запросы на расширение функциональности модуля, однако оставляет за собой решение о возможности и сроках реализации конкретных запросов. Работы по расширению функциональности модуля осуществляются только за дополнительную плату.

Разработчик, за отдельную плату, может оказывать Покупателю услуги по настройке Модуля для конкретного Магазина, однако оставляет за собой решение о возможности и сроках оказания такой услуги.

Спасибо за приобретение и использование модуля Расширенных фильтров для HostCMS!

public/moduli/adaptivnye_filtry.txt · Last modified: 22.03.17 в 12:09 by Артем Куц