
mFilter
Фасетная фильтрация для MODX 3 с поддержкой SEO URL


mFilter интегрируется с популярными компонентами MODX.
| Компонент | Описание |
|---|---|
| MiniShop3 | Интернет-магазин |
| mSearch | Полнотекстовый поиск |
mFilter работает через параметр element — любой сниппет, возвращающий ресурсы:
[[!mFilter?
&element=`msProducts` // MiniShop3
&element=`mSearch` // mSearch
&element=`pdoResources` // pdoTools
&element=`getTickets` // Tickets
]]mFilter передаёт отфильтрованные ID во внешний element:
1. element получает все ID (returnIds=1)
2. mFilter фильтрует ID
3. element рендерит отфильтрованные ID
4. paginator обеспечивает пагинацию┌─────────────┐ IDs ┌─────────────┐
│ element │ ────────► │ mFilter │
│ (msProducts)│ │ (фильтры) │
└─────────────┘ └──────┬──────┘
│
filtered IDs
│
▼
┌─────────────┐
│ paginator │
│ (pdoPage) │
└──────┬──────┘
│
HTML
│
▼
┌─────────────┐
│ Browser │
└─────────────┘Element должен поддерживать:
resources — список ID для выводаreturnIds — возврат ID вместо HTMLPaginator должен поддерживать:
element — сниппет для рендерингаresources — список ID