Вопрос висит без ответа с прошлого года: как сделать фильтры для Collection в админке MODX?
Всем привет!
Используется компонент Collections для вывода списка ресурсов в админке (разбиение на категории).
Необходимо внутри коллекции добавить фильтрацию по ТВ параметрам ресурсов, т.е. там где в коллекции Поиск по ресурсам, фильтр «Опубликован/нет...», вот там нужен ещё фильтр по определённым, заранее подготовленным ТВ.
Как это можно сделать, есть какой-нибудь мануал? В инете не смог найти ничего.
Продублировал этот вопрос на тостере — пока тишина, но всё равно не понятно как остальные этот вопрос решают? Как управляют десятками тысяч товаров или иным контентом например? Или все делали магазинчики на пять-десять товаров, где в этом просто нет необходимости?
Используется компонент Collections для вывода списка ресурсов в админке (разбиение на категории).
Необходимо внутри коллекции добавить фильтрацию по ТВ параметрам ресурсов, т.е. там где в коллекции Поиск по ресурсам, фильтр «Опубликован/нет...», вот там нужен ещё фильтр по определённым, заранее подготовленным ТВ.
Как это можно сделать, есть какой-нибудь мануал? В инете не смог найти ничего.
Продублировал этот вопрос на тостере — пока тишина, но всё равно не понятно как остальные этот вопрос решают? Как управляют десятками тысяч товаров или иным контентом например? Или все делали магазинчики на пять-десять товаров, где в этом просто нет необходимости?
Комментарии: 4
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Добавляете в /assets/components/collections/js/mgr/extra/collections.combo.js в collections.combo.FilterStatus store необходимые записи
Дорабатываете процессор /core/components/collections/processors/mgr/resource/getlist.class.php, чтобы он мог фильтровать по TV в функции prepareQueryBeforeCount (в настройках коллекции включать невидимую колонку с этой TV, тогда будет она присоединяться сразу к запросу)
Странно что этот функционал сразу не реализовали в Collections!
Добавил нужные записи в collections.combo.FilterStatus, с этим проблем нет, а вот с доработкой процессора чёт затык.
Как правильно добавить tv поле в условие? В коллекцию добавил TV поле «tv_portfolio». Пробую добавлять вариант в функцию prepareQueryBeforeCount в switch:
выдает ошибку:
я так понимаю тут без разницы, какие у меня поля в коллекцию добавлены? Есть примеры правильного условия?
Имя столбца формируется следующим образом: