2009-03-30 3 views
0

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

Я хотел был бы иметь возможность создать страницу intro с подверженным фильтру близости который после того как я выполнил бы взятие меня к (info) страница и одновременно фильтровать 4 взгляда с proximity введенным на intro странице.

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

Благодаря

ответ

3

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

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

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

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

+0

Eaton, Спасибо за ваш быстрый ответ. Я считаю, что понимаю, но не знаю, как реализовать. Прежде чем идти дальше ... это можно сделать с помощью Views в Drupal 5.x? В настоящее время я как бы заблокирован до 5.x из-за отсутствия некоторых модулей в 6.x. Jeff (jdm843) – 2009-03-31 04:32:17

+0

Открытые фильтры по-прежнему работают в D5, но вы должны быть намного внимательнее: они используют такие клавиши, как 'filter1' и 'filter2', что означает, что вам нужно сохранить все фильтры для th различные представления в синхронизации, чтобы совпадающие URL-адреса. если вы это сделаете, он все равно должен работать! – Eaton

Смежные вопросы