[Решено] exposed фильтр по заголовку

Главные вкладки

Аватар пользователя Darth_Beholder Darth_Beholder 3 мая 2014 в 1:31

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

Решил, что удобнее делать каждую такую галерею целой нодой со множеством картинок, чем плодить кучу нод-картинок и явно указывать там термин таксономии. Выпадающий список должен состоять из наименований галерей.
Но тут возникла проблема, для того, чтобы выводился exposed form правильно, приходится использовать групповые фильтры в настройках exposed фильтра и явно задавать там наименования галереи, чтобы они использовались в выпадающем списке. Т.е. просто создать новую галерею не выйдет, каждый раз нужно будет править views, чтобы новая галерея появилась в селекте.
Погуглил, на страничке модуля better_exposed_filters написано, что это связано с ограничениями views, т.е. по наименованиям нод простой селект не сделать, если бы был термин таксономии - то другое дело. Решил создавать для каждого наименования галереи свой термин таксономии, поставил для этого NAT, но теперь не получается в views задать exposed фильтр.

Т.е. нужно или автоматом присваивать вновь созданной галерее термин таксономии, совпадающий с её заголовком, и фильтровать уже по терминам, или как-то сравнивать наименование с выбранным из селекта термином.
Не знаю, как сделать ни того, ни другого. А возможно все как-то проще решается.
Прошу помощи, может кто сталкивался, не получается разобраться.

Комментарии

Аватар пользователя drupby drupby 8 мая 2014 в 6:49

"Darth_Beholder" wrote:

Все молчат? Как же так((

Так все целую ночь ждут, пока Вы нормально сформулируете вопрос - что же Вам все таки нужно?

Аватар пользователя Darth_Beholder Darth_Beholder 11 мая 2014 в 19:13

Прошу прощения за непонятную формулировку, благодарю за отклик.

Есть тип материала - галерея. В каждую галерею загружается несколько картинок.
Нужно вывести выпадающий список с наименованиями галерей (по полю заголовка), по выбору значения списка - переход в выбранную галерею.

Это у меня получилось только через групповой фильтр, явно указывая все возможные значения списка. Проблема в том, что если пользователи захотят создать новую галерею, придется залезать в настройки этого view и добавлять наименование новой галереи в выпадающий список в exposed filter.

Хотелось бы узнать, как решить задачу нормально.

Аватар пользователя drupby drupby 11 мая 2014 в 19:42

"Darth_Beholder" wrote:
Хотелось бы узнать, как решить задачу нормально.

добавить поле с термином таксономии , при сохранении ноды-галлереи заполнять это поле программно в hook_node_presave и делать фильтр по термину

либо же сделать финт ушами - установить модуль https://drupal.org/project/auto_entitylabel , который позволяет автоматически заполнять заголовок ноды(скрыв его от заполнения) , взяв значение из какого-нибудь поля . Добавить поле (term_reference) и назвать его "название галлереи" и пользователь его будет заполнять, а тайтл будет автоматически подставляться из значения этого поля, ну и потом опять таки фильтровать вьюху по этому полю

Аватар пользователя Darth_Beholder Darth_Beholder 11 мая 2014 в 20:00

ага, спасибо, а я хотел делать наоборот - термин таксономии заполнять по заголовку.

Попробую второй вариант, с хуками не люблю баловаться почему-то.