Как передать контекстный фильтр Views через URL?


18

Я хочу передать некоторые значения моему представлению через контекстные фильтры в URL. Какие GET naImes я использую? Кажется, здесь не дано никакой подсказки, только это «Значения контекстного фильтра предоставлены URL».

Если мне нужно создать этот URL, как мне узнать, какие имена переменных GET мне нужно передать, чтобы они были распознаны?

Ответы:


13

Контекстные фильтры не передаются в отдельных переменных, они являются частью пути. Если ваш путь просмотра равен xxx / yyy, то для значения фильтра nn путь будет равен xxx / yyy / nn.


1
+1. и этот порядок xxx / yyy такой же, как вы можете видеть на панели «Контекстные фильтры» в пользовательском интерфейсе Views.
AyeshK

12

Используйте Предоставить значение по умолчанию в контекстном фильтре.

контекстный фильтр

также вы можете использовать PHP-код для получения значения из URL

введите описание изображения здесь


1
У вас есть пример кода PHP, который можно использовать? Благодарность!
petergus

Это связано с этой областью. Например: - тогда это числовое поле - вернуть 1; или верните $ user-> uid; и т.д ..... будет работать.
Sibiraj PR

Arent эти варианты, когда значение не в URL? Как он будет измерять свое значение, отправленное в качестве параметра?
pal4life

Никогда не рекомендуется размещать код PHP в своей базе данных, всегда делать код в файлах и сохранять их в системе пересмотра кода
lslinnet

5

Если вы хотите передать аргументы через GET в URL, вы можете использовать модуль BEF для этого.

Например: mydomain.com/your-view-path?field_a=valuea&field_b=valueb

В Better Exposed Filters вам нужно добавить открытые фильтры (не контекстный фильтр), отметьте опцию expose this filter, и имя переменной GET ниже в дополнительных опциях. Тогда, если вы не хотите показывать фильтр, вы можете спрятать его в настройках Better Exposed Filters.

Не забудьте включить опцию «Использовать Ajax», если ваш вид является блочным дисплеем.

Установленный стиль фильтра должен быть установлен на «Лучшие открытые фильтры», а не на «Основной».

Это очень полезно для просмотра блоков.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.