Mam dwa pola profilu użytkownika „Nazwisko” i „Imię”. Mam również widoki listy użytkowników. Chcę udostępnić „Imię” jako filtr, który może wyszukiwać zarówno Nazwisko, jak i Imię. Jak mogę zrobić pojedynczy filtr kombinacji tych dwóch pól? Czy mogę go utworzyć z interfejsu użytkownika widoków?
Jednym z możliwych sposobów jest utworzenie kolejnego pola profilu „Nazwa”, które będzie ukryte w formularzu. Podczas zapisywania przez użytkownika połączę dwie wartości pól w pole „Nazwa”, a następnie pokażę je jako filtr w widokach. Ale to rozwiązanie jest mocno kodowane i musi pisać haczyki.
Odpowiedzi:
I w końcu dostałem rozwiązanie od tego . Postanowiłem zastosować drugie podstawowe rozwiązanie, chociaż bloger osobiście go używał
hook_views_query_alter()
.To dało mi szybkie rozwiązanie bez twardego kodowania.
Oto inne pomocne informacje.
źródło
W mojej instalacji, D7 z widokami 7.x-3.6, możesz dodać filtr „Globalny: Połącz filtr pól”, który zrobi dokładnie to, czego potrzebujesz, umożliwiając użytkownikom wyszukiwanie na wielu polach za pomocą jednego filtra.
źródło
To naprawdę proste.
Dzięki.
źródło
Działa po wyjęciu z pudełka
Najprościej jest użyć filtru „Wyszukiwane hasła”, który jest podstawową funkcją Widoku . Przeszuka wszystkie pola encji i zwróci wynik, nie jest wymagany żaden dodatkowy moduł!
To wszystko, nic więcej do zrobienia (choć możesz chcieć to ujawnić)
Działa również bardzo dobrze.
źródło
Możesz użyć hook_views_pre_execute (& $ view), aby rozszerzyć swój pojedynczy warunek na wiele pól, które chcesz
źródło