Spędziłem dni próbując ustalić czysty sposób na wykonanie następujących czynności:
- Wyświetl listę wszystkich terminów najwyższego poziomu w słowniku wraz z linkami do terminów podrzędnych
- Po kliknięciu linku zostaniesz przeniesiony do listy dzieci tych warunków.
- Ad infinitum do terminu najniższego poziomu, dla którego zostanie wyświetlona lista węzłów oznaczonych tym terminem.
Wydaje się, że byłaby to dość powszechnie potrzebna funkcjonalność, ale nie mogę znaleźć żadnego rozwiązania, które poradziłoby sobie z dowolną głębokością, szczególnie jeśli nie wszystkie drzewa terminów schodzą na tę samą głębokość.
Idealnym rozwiązaniem byłoby takie, które wykorzystuje Widoki 3, Konteksty, EntityFieldQueries lub cokolwiek innego, co jest dobrze obsługiwane w Drupal 7.
Jestem w stanie zrobić niemal dokładnie to, co chcę, dokonując prostego widoku z trzech węzłów: relacji długoterminowych (Term, rodzica terminowi, a rodzic termin rodzic) i użytkownikiem tych, dla kolejnych filtrów kontekstowych. Jedynym problemem jest to, że jeśli istnieje węzeł ze ścieżką termiczną o zbyt małej głębokości, zostaje wymieniony jako „nieskategoryzowany” i generuje martwy link. Zamiast tego chciałbym, aby link do następnego dostępnego terminu potomnego był dostępny.
źródło
Uwaga: Należy odznaczyć „Połącz to pole z jego stroną terminu systematyki”
Gdy odwiedzasz stronę widoku, zobaczysz dzieci najwyższego rodzica; zgodnie z przykładem otrzymalibyście:
Gdy klikniesz term1, dostaniesz dzieci. Aż do osiągnięcia terminu 1.1.1. Nie uzyskasz żadnego wyniku, jeśli klikniesz jeszcze termin 1.1.1. Aby to osiągnąć, musimy utworzyć jeszcze jeden blok widoku w powyższym widoku.
Uwaga: Po ich usunięciu upewnij się, że wybierzesz opcję Ta strona (Over Ride) z rozwijanego menu u góry obok. W przeciwnym razie pola i filtry kontekstowe utworzone na stronie również znikną .
Zapisz widok i gotowe.
źródło
Myślę, że to, czego chcesz, to drzewo widoków , moduł contrib, który używa widoków do konstruowania drzewa terminów taksonomicznych.(Daj mi sekundę, a napiszę, jak korzystać z niego, aby wyświetlić pola podatkowe)Najwyraźniej w tym module występuje problem uniemożliwiający działanie z warunkami taksonomicznymi. Gwizd.
To powiedziawszy, znalazłem następujący kod, który wydaje się robić to, co chcesz (możesz sprawić, by wyświetlał / ukrywał elementy za pomocą dość podstawowego kodu jQuery):
Poprzez „ Zagnieżdżone listy kategorii z linkami do stron ”.
źródło
Jeśli chcesz mieć tylko zestaw dynamicznych stron przeglądania taksonomii, wybrałbym następującą metodę, wymagającą 3 wyświetleń + moduł wyświetlania taksonomii , który pozwala używać widoków do wyświetlania zawartości
taxonomy/term/%
stron:Ponieważ widoki 1 i 2 będą prawdopodobnie tematycznie podobne, możesz rozważyć połączenie ich jako wyświetlaczy w jeden widok - łatwiej byłoby nim zarządzać.
Z powodzeniem zastosowałem to podejście do mojej taksonomii. Na szczęście był jednorodny na każdym poziomie - dana gałąź kończyła się liśćmi (węzłami) lub gałęziami (warunkami), ale nie obydwoma. Jeśli byłoby to ograniczenie, najpierw przetestuj.
Oczywiście jest to „pseudo-kod”. Chcesz skonfigurować sprawdzanie poprawności i filtry oraz ładne, logicznie wyglądające wzorce pathauto odzwierciedlające strukturę.
źródło