Можно ли использовать один открытый фильтр для фильтрации нескольких видов блоков на разных страницах?

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

Я хотел бы иметь возможность создать вступительную страницу с открытым фильтром близости, которая при выполнении приведет меня на страницу (информация) и одновременно отфильтрует четыре представления с указанием близости, введенной на странице введения.

Как я могу это сделать? Я новичок в php, но учусь.... готов работать над этим!

Спасибо

1 ответ

Если вы используете Views в Drupal 6, ответ - да, с некоторыми важными оговорками.

В отличие от нормальных форм в Drupal, открытые значения фильтра Views поступают в виде параметров $_GET, более редких, чем $_POST. Это означает, что вы можете заполнить открытый фильтр, просто добавив? Filter=value&filter2=value2 etc... к текущему URL.

Важно отметить, что если несколько просмотров на одной странице ищут одни и те же ключи фильтра в URL, они оба будут использовать входящее значение фильтра. Вам нужно будет настроить список открытых фильтров для каждого представления, чтобы убедиться, что все они используют один и тот же список фильтров с одинаковым списком "ключей" для входящих значений. Если вы хотите, чтобы форма фильтра появлялась только один раз, возможно, вам придется сделать несколько хитроумных манипуляций - представления захотят, чтобы она отображалась в каждом представлении по умолчанию, но в каждом представлении есть возможность переместить свои открытые фильтры в блок.; Делая это, НЕ включив открытый блок фильтра, эффективно скрывает открытые виджеты фильтра представления, сохраняя фильтрацию активной, если она входит через URL.

Подводя итог: убедитесь, что все четыре представления имеют одинаковый список открытых фильтров и используют одни и те же "ключи" для фильтров. Скрыть открытые виджеты фильтра на всех, кроме одного из представлений. На этом этапе это должно работать.

Другие вопросы по тегам