Skip to content
mFilter
mFilter
Фасетная фильтрация для MODX 3 с поддержкой SEO URL
  1. Компоненты
  2. mFilter
  3. Интерфейс админки
  4. Обслуживание

Обслуживание

Инструменты для обслуживания и оптимизации mFilter.

Операции

Переиндексация

Пересоздаёт индексы и кэш фильтрации.

Когда использовать:

  • После массового импорта товаров
  • После изменения структуры опций
  • При проблемах с counts (suggestions)

Действие:

Обслуживание → Переиндексировать

Очистка кэша

Удаляет кэш результатов фильтрации.

Когда использовать:

  • После изменения настроек
  • При обновлении компонента
  • При некорректных результатах

Действие:

Обслуживание → Очистить кэш

Регенерация слагов

Пересоздаёт слаги для всех значений фильтров.

Когда использовать:

  • При изменении правил транслитерации
  • После миграции данных

Действие:

Обслуживание → Регенерировать слаги

Перестроение роутера

Обновляет кэш URL-роутера.

Когда использовать:

  • После изменения паттернов
  • После изменения привязок наборов

Действие:

Обслуживание → Перестроить роутер

Статистика

Общая информация

ПоказательОписание
Наборы фильтровКоличество активных наборов
ПривязкиКоличество привязок к ресурсам
СлагиОбщее количество слагов
SEO шаблоныКоличество шаблонов
СловоформыКоличество словоформ

Кэш

ПоказательОписание
Записей в кэшеКоличество закэшированных результатов
Размер кэшаОбъём данных
Истёкших записейЗаписи с истёкшим сроком

Автоматическое обслуживание

Очистка устаревшего кэша

Автоматически выполняется через cron или при первом запросе:

php
// Плагин на OnWebPageInit или cron-скрипт
$mfilter = $modx->services->get('mfilter');
$mfilter->cleanExpiredCache();

Настройки кэша

НастройкаОписание
mfilter.cache_enabledВключить кэширование
mfilter.cache_ttlВремя жизни кэша (секунды)

Диагностика

Проверка индексов

Убедитесь, что все необходимые индексы существуют:

sql
SHOW INDEX FROM modx_mfl_slugs;
SHOW INDEX FROM modx_mfl_cache;

Проверка конфигурации

php
$mfilter = $modx->services->get('mfilter');

// Проверить загрузку сервисов
$filter = $mfilter->getFilter();
$slugManager = $mfilter->getSlugManager();

Логирование

Включите отладку для диагностики:

Система → Системные настройки → mfilter.debug = Да

Логи пишутся в core/cache/logs/error.log.

Резервное копирование

Экспорт данных

Перед обслуживанием рекомендуется сделать бэкап:

sql
-- Наборы фильтров
SELECT * FROM modx_mfl_filter_sets INTO OUTFILE '/tmp/filter_sets.csv';

-- Слаги
SELECT * FROM modx_mfl_slugs INTO OUTFILE '/tmp/slugs.csv';

-- SEO шаблоны
SELECT * FROM modx_mfl_seo_templates INTO OUTFILE '/tmp/seo_templates.csv';

Импорт данных

sql
LOAD DATA INFILE '/tmp/filter_sets.csv' INTO TABLE modx_mfl_filter_sets;

Оптимизация производительности

Рекомендации

  1. Используйте кэш — включите mfilter.cache_enabled
  2. Настройте TTL — оптимальное время жизни 3600-86400 сек
  3. Индексы БД — убедитесь в наличии всех индексов
  4. Очищайте регулярно — удаляйте устаревший кэш

Мониторинг

php
// Включить профилирование
$modx->setOption('mfilter.profile', true);

// После запроса проверить время
$mfilter = $modx->services->get('mfilter');
$profile = $mfilter->getProfiler()->getReport();