Рейтинг:1

Могу ли я передать открытые значения фильтра представления на следующую страницу?

флаг us
DHB

У меня есть представление сайта D8 с открытыми фильтрами. Я хочу, чтобы выбранные фильтры из этого представления переносились на URL-адрес следующей страницы.

Например: На странице перечислены названия программного обеспечения. Если кто-то фильтрует ОС и выбирает MacOS, URL-адрес страницы просмотра меняется с «viewpage» на «viewpage?os=MacOS». Я хочу изменить ссылки в представлении с «drupalpage» на «drupalpage?os=MacOS».

Я не могу понять, как добавить строку запроса «?os=MacOS» к ссылке в представлении. Есть способ сделать это?

Рейтинг:0
флаг cg

Я думаю, что вам нужно было войти в свой предварительный процесс и передать его своим представлениям.

В hook_preprocess_views_view() реализация в вашей теме или модуле:

$values ​​= $view->getExposedInput();
// например $values["os"];

Или вы можете получить доступ к значениям непосредственно из просмотры-view.html.twig шаблон:

// Предположим, что `os` настроен как идентификатор фильтра в 

// Критерии фильтра представления выставлены filter.
{{ view.getExposedInput.os}}
DHB avatar
флаг us
DHB
Спасибо. Я спрашивал о переменных фильтра в URL-адресе, которые передаются в ссылки на странице, чтобы они сохранялись на следующей странице, а BEF (который мы используем) ничего подобного не делает. Мы выяснили, как сделать то, что мне было нужно в шаблоне TWIG для страницы, используя там переменные view.getExposedInput. Работает отлично.
Yuseferi avatar
флаг cg
@DHB большое спасибо за ваш комментарий. Я плохо понял вопрос. Я обновляю ответ для вас, это немного поздно, но это может помочь другим друпаластам, которым понадобится что-то подобное в будущем :).
DHB avatar
флаг us
DHB
Спасибо @Yuseferi! На самом деле я смог сделать именно это, и это сработало именно так, как нам было нужно.
Yuseferi avatar
флаг cg
@DHB вообще без проблем. если это работает, отметьте это как правильный ответ, чтобы помочь людям в будущем, пожалуйста :)
DHB avatar
флаг us
DHB
Спасибо за совет @Yuseferi. Я отметил это.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.