У меня есть представление Drupal, которое фильтрует поле таксономии. Я хотел бы иметь возможность включать / выключать фильтр, выставив флажок в форме «Открытые фильтры». Чтобы проиллюстрировать проблему, скажем, например, что словарь - это фрукты, а термины - это яблоки, груши, апельсины и лимоны. Я могу выбрать содержание цитрусовых, создав фильтр с надписью «Фрукты» (апельсины, лимоны). Теперь я хотел бы открыть фильтр, чтобы я мог выбрать, применять ли мой фильтр цитрусовых. Как я могу добавить флажок в формы открытых фильтров, которые будут применять фильтр при выборе и игнорировать фильтр, если он не выбран?
Выставьте фильтр Drupal Views как флажок включения / выключения, чтобы включить / отключить фильтр
Ответы (4)
Это возможно:
- Добавьте фильтр в соответствующее поле (в вашем примере термин «Фрукты»).
В диалоговом окне Настроить критерий фильтра:
- Установите «Тип фильтра для выставления» на «Сгруппированные фильтры».
- Установите флажок "Разрешить множественный выбор".
- Установите "Тип виджета" на "Радио".
- Вероятно, вы захотите очистить метку.
- Удалите все наборы фильтров, кроме одного, из приведенной ниже таблицы.
В оставшемся наборе фильтров:
- Заполните этикетку (в вашем примере «Цитрусовые»).
- Установите «Оператор» на «Один из».
- В разделе «Значение» выберите значения, по которым вы хотите выполнить фильтрацию (в вашем примере - апельсины и лимоны).
Это дает вам 1 флажок с надписью «Цитрусовые фрукты». Итак, пользовательский интерфейс есть. К сожалению, проблема [# 2224601] препятствует ее работе, поскольку приводит к неверному запросу, но имеется рабочий патч.
Предполагая, что вы используете BEF и отметили опцию «Флажки / переключатели» для открытого фильтра. в параметрах BEF можно установить флажки вместо переключателей, чтобы установить флажок «Разрешить множественный выбор» в диалоговом окне конфигурации для открытого фильтра в представлениях.
Думаю, здесь нет ответа на вопрос. «Я хочу отобразить единственный флажок, который при установленном флажке применяет / включает фильтр, а при снятии флажка игнорирует / отключает фильтр. Я не думаю, что фильтры Better Exposed позволяют мне это делать».
Для этого вам не нужны «фильтры с улучшенной экспозицией». Вам нужно использовать сгруппированные фильтры.
- Нажмите, чтобы открыть этот фильтр для посетителей
- Тип фильтра, который нужно выставить: сгруппированные фильтры
- Установите флажок "Необязательно"
- Установите флажок "Тип виджета: Радио".
- Установите флажок "Разрешить множественный выбор".
- При необходимости удалите / очистите метку
- Внизу у вас будет несколько рядов, где вы можете настроить каждую по своему желанию. Если вам нужен только один, удалите все, кроме одного
- Нажмите Применить
Этот ответ очень поздно. Но я надеюсь, что это кому-то поможет.
Вы могли бы предположить, что Views сделают это из коробки. Это не так. Используйте модуль Better Exposed Filters -> http://drupal.org/project/better_exposed_filters
В нем даже есть вложенные флажки / переключатели для таксономии с иерархией.
Вот некоторая документация, относящаяся к тому, что вы пытаетесь сделать ...
«Флажки / переключатели: этот параметр доступен для любого фильтра, имеющего ограниченное количество параметров. Установите флажок« Принудительно использовать один параметр », чтобы использовать переключатели, и снимите его для флажков.
Вложенные флажки / радиокнопки: хотя этот параметр отображается для любого фильтра, для которого отображается обычный параметр флажков, на самом деле он используется только для фильтров таксономии с иерархией. Если вы используете фильтр таксомии с установленным типом выбора «Раскрывающийся список» и отметкой «Показать иерархию в раскрывающемся списке», эти фильтры будут отображаться как вложенные неупорядоченные списки. Отметьте опцию Force single, чтобы использовать вложенные переключатели "