Mój klient poprosił mnie o jedno pole, które działałoby na 2 sposoby:
- Filtr autouzupełniania oparty na taksonomii.
- Jeśli odwiedzający witrynę wprowadzi coś, czego nie ma w taksonomii, należy przeszukać pełny tekst na treści i wyświetlić odpowiedni komunikat informacyjny.
W ten sposób, jeśli użytkownik wpisze nazwę kategorii, otrzyma ręcznie wybrane węzły na liście, a jeśli cokolwiek innego, dostanie przynajmniej trochę treści.
Osobno jest to łatwe. Ale jak połączyć te zachowania w jednym polu?
views
taxonomy-terms
search
Mołot
źródło
źródło
Odpowiedzi:
Moduł Findera dokładnie spełni twoje wymagania. Możesz wybrać termin taksonomii, a także tytuł węzła, treść, pola itp., Aby przeprowadzić wyszukiwanie.
Służy do tych celów:
Zobacz poniższy zrzut ekranu. W polu wyszukiwarki możesz wybrać warunki taksonomii, a także treść węzła, aby przeprowadzić wyszukiwanie w polu autouzupełniania, nawet jeśli możesz przeprowadzić wyszukiwanie wielu słów kluczowych oddzielonych przecinkiem. Więcej informacji znajdziesz w dokumentacji Findera .
Po dodaniu elementu możesz wybrać pola wyszukiwarki z listy, przytrzymaj
Klawisz Ctrl, aby wybrać termin taksonomii, a także Node: Body
źródło
Piszę bez testowania, ale mam wrażenie, że możesz użyć go przynajmniej jako punktu wyjścia.
Za pomocą modułu Widoki Widok pola można osadzić widok w innym widoku, a także pozwala przekazać filtr kontekstowy do widoku osadzonego.
W twoim przypadku stworzyłbym tylko inny widok z filtrem kontekstowym, który przeszukuje dany filtr. Nie jestem pewien co do tego, czy możesz przeprowadzić wyszukiwanie za pomocą filtrów kontekstowych, ale widziałem kilka opcji, takich jak „Szukaj: Termin” itp.
To powiedziawszy, jeśli mimo wszystko uda ci się osiągnąć ten pierwszy krok, reszta jest stosunkowo prosta.
W oryginalnym widoku dodajesz „Brak zachowania wyników” w sekcji opcji zaawansowanych i dodajesz „Globalny: widok (widok pola Widoki)” i wybierasz wcześniej utworzony widok, i przekazujesz token odsłoniętego filtra jako filtr kontekstowy do osadzonego widoku (tokeny można znaleźć na liście wzorów zastępczych).
źródło
Przeszedłem powyższe dyskusje i być może w poniższym scenariuszu można znaleźć odpowiedź na post „Jak połączyć filtr odsłonięty z wyszukiwaniem?”. Implementacja będzie wymagać niestandardowego kodowania.
form_id = 'sns_studio_form_filter'
).W naszym module obsługi przesyłania formularzy niestandardowych pobieramy informacje z pól formularza niestandardowego i generujemy podobny adres URL, jak odnotowaliśmy w kroku 6. I wreszcie przekierowujemy do tego adresu URL. Będzie tak w module obsługi przesyłania:
Tak więc teraz, po wykonaniu kroku 7, wszystkie bloki widoku zostaną przefiltrowane na podstawie ustawionych kryteriów filtrowania.
Mam nadzieję, że to pomoże.
źródło
Jest też inny sposób: możesz wypróbować moduł Concat Field . Zasadniczo dodajesz pole do typów treści, a następnie możesz użyć filtru według tego pola jako wyszukiwania.
Zgadzam się, że jest dość podobny do Findera, ale myślę, że nadal warto o tym wspomnieć.
źródło