Автор дополнения
Артур Шевченко
Пакетов
6
Закачек
1 965
Обычно отвечает в течение недели
Автор дополнения
Пакетов
6
Закачек
1 965
Обычно отвечает в течение недели
Версия 1.0.2-pl
Дата выпуска 09.09.2024
Загрузки 11
Просмотры 1 150
Внимание, этот компонент требует версию PHP 7.4 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.
Внимание, этот компонент требует версию MODX не ниже 2.6 !
Это альтернатива всем известному компоненту mSearch2. Компонент предлагает другой подход к фильтрации, что приводит как к значительному увеличению скорости фильтрации, так и к ряду особенностей. Это некое компромиссное решение между mSearch2 и сервисами типа ElasticSearch или Sphinx.

Перед установкой компонента убедитесь, что у вас установлен SendIt версии 2.0.0 или выше.

Преимущества
1. Не требует установки на сервер сторонних библиотек или сервисов типа ElasticSearch или Sphinx.
2. Высокая скорость фильтрации (менее 1 секунды при 100 000 товаров).
3. Простота настройки, при использовании стандартных классов.
4. Фильтрация по множественным значениям.
5. Умеет фильтровать пользователей.
6. Умеет фильтровать по полям тип migx с глубиной вложенности не более 1.
7. Кастомизация логики с помощью плагинов.

Особенности
1. Не умеет показывать количество совпадений по отдельным фильтрам.
2. Умеет блокировать значения фильтров, которые точно вернут пустой результат.
3. Возвращает результат в виде строки со списком id, но не готовый html или объект.
4. Нет встроенного поиска.

1.0.2-pl

  • Добавил системные настройки ff_resource_types и ff_user_types.

1.0.1-pl

  • Небольшая оптимизация JavaScript.
  • Добавил обратные кавычки в запрос получения ключей фильтров.
  • Добавил проверку на пустоту для полей extended.

1.0.0-pl

  • Добавил системное событие ffOnBeforeSetIndexValue.

1.0.0-rc5

  • Добавил системное событие ffOnAfterGetFilterValues.
  • Сделал свойство $config в классе IndexingResources публичным.
  • Добавил проверку существования объект в функции получения родителей.
  • Переписал метод getParentIds в классе FlatFilters.
  • Убрал вывод выбранного варианта сортировки в списке выбранных фильтров.
  • Добавил преобразование json в массив для параметра sortby.
  • Сделал свойство tokens публичным.

1.0.0-rc4

  • Исправил ошибку в основном классе.

1.0.0-rc3

  • Добавил резолвер на удаление таблиц.
  • Добавил обработку события submit в JS.
  • Добавил системные события ffOnBeforeFilter, ffOnAfterFilter и ffOnBeforeRender.
  • Добавил проверку количества фильтров, чтобы не блокировать значения при 1 фильтре.
  • Добавил в конфигурацию JS параметр hideClass для скрытия элементов.
  • Добавил передачу пресетов в JS.
  • Добавил системную настройку со списком пресетов.
  • Добавил обработку изменения лимита на странице.
  • Добавил индексирование пользователя при сохранении.
  • Добавил в JS метод updateFilters(), позволяющий перефильтровать ресурсы.
  • Изменил метод JS метод reset(), чтобы он триггерил метод update().
  • Оптимизировал построение url.
  • Удалил старые файлы
  • Поменял сравнение $value на более строгое в методax getAllFiltersValue(), getFilterSql() и процессорах  create и update в методе prepareDefaultFilters()
  • Добавил событие ffOnBeforeSetFilterConditions()
  • Вынес обновление урла в отдельную функцию
  • Переделал методы индексации indexingDocument и indexingUser под общий формат входных данных - объекты.
  • Добавил передачу парамеров вызова сниппета в чанки.
  • Удалил подключение старого обработчика из процессора индексации.
  • Исправил опечатку в методе decodeJsonValue класса IndexingResources.
  • Добавил передачу пресета в обработчик пагинации через форму или поле.
  • Добавил проверку на 0 в метод removeResourceIndex().
  • Добавил проверку существования пользователя в плагин.
  • Добавил системное событие ffOnBeforeGetFilterValues.
  • Удалил из опций событий параметр FlatFilters.

1.0.0-beta2

  • Добавил проверку наличия конфига migx.

1.0.0-beta

  • Первая сборка.

Последние обсуждения в сообществе MODX.pro