Moduł drupalowy Views jest na tyle rozbudowany, że pomimo częstej pracy z nim od czasu do czasu potrafi zaskoczyć mnie swoimi możliwościami. Zwłaszcza wersja dla 7 kryje w sobie wiele niespodzianek, z których pewnie niejedna nie została przeze mnie jeszcze odkryta. Chciałabym zebrać wszystkie ciekawe rzeczy, o których wiem, być może komuś z Was się przydadzą.

Wykluczenie aktualnie przeglądanej treści

Niekiedy istnieje konieczność wykonania widoku prezentującego nody powiązane, najnowsze w tej samej kategorii czy użytkowników o tej samej randze na stronie użytkownika. Z pomocą oczywiście przychodzą Contextual filters (Filtry kontekstowe). Problem pojawia się w momencie, gdy chcemy pokazać wpisy za wyjątkiem aktualnie przeglądanego elementu.

Moja niewiedza do niedawna powodowała, że albo używałam filtrów php, albo problem pomijałam. Rozwiązanie okazało się jednak banalnie proste.

Rozwiązanie

Analizując powiązane nody z tej samej kategorii, aby osiągnąć listing wpisów należy dodać dwa filtry kontekstowe. W moim przypadku jest to Zawartość: Kategoria oraz... Zawartość: ID Węzła.


Wybrane kontekstowe filtry.

Pierwszy filtr powinien automatycznie przechwytywać wartość z node'a dzięki możliwości „Dostarcz domyślną wartość”.


Dostarczenie domyślnej wartości typu ID taxonomy z adresu URL oraz zaznaczenie Wczytaj domyślny filtr ze strony węzła.

Drugi filtr natomiast to filtr wykluczający. Również dostarczamy wartość domyślną, tj. nid na podstawie adresu URL, natomiast w sekcji więcej należy wybrać opcję „Wyklucz”.


Wykluczenie artumentu.

Całość bardzo prosta, a jakże przyjemna!

Czemu views nie pokazuje zajawek z treści dostępnej tylko po zalogowaniu?

Widok przy generowaniu elementów „sięga” do tabeli {node_access}, czyli upewnia się, że użytkownik posiada dostęp do konkretnych elementów. Nie zawsze jest to rozwiązanie preferowane, wyobraźmy sobie sytuację, gdy treść jest dostępna tylko dla zarejestrowanych użytkowników, ale listing z zajawkami chcemy pokazać również anonimowym, aby zachęcić ich do rejestracji.

Rozwiązanie

Na szczęście i o tym pomyślano.
Wystarczy kliknąć w Ustawienia kwerendy, a następnie wybrać Wyłącz przepisywanie SQL. I to wszystko.


Umiejscowienie elementu „Ustawienia kwerendy” w sekcji „Inne”

”Odnośnik: więcej” z sekcji stronicowanie nie przenosi mnie tam, gdzie chcę

Odnośnik ten samodzielnie generuje link do pełnej treści. Przydaje się to zwłaszcza w przypadku niestronicowanych bloków wyświetlających zaledwie kilka elementów.
Moduł Views w przypadku wybrania tej opcji automatycznie kieruje użytkowników do pierwszego formatu wyświetlania typu „strona” w tym samym widoku (2.)

Rozwiązanie

Jeśli taki wybór nas nie satysfakcjonuje można to zmienić z poziomu samego Viewsa nie zmieniając kolejności ani nie dodając nowego formatu wyświetlania.
Wystarczy skorzystać z ustawień Format powiązany w sekcji Inne (3.)


Umiejscowienie elementu „Format powiązany” w sekcji Inne.

Chciałbym zrobić słowniczek (glossary) dotyczący node'ów, kategorii, użytkowników...

Od razu uprzedzę – taki słowniczek już istnieje i warto mu się bliżej przyjrzeć. Jest on na liście widoków domyślnie wyłączony, natomiast może być świetnym polem nauki.
Glossary (słowniczek) przedstawiam na poniższym screenie.

Rozwiązanie

Aby wykonać coś takiego w Drupalu należy skorzystać znowu z filtrów kontekstowych.
W domyślnych filtrach należy wybrać opcję Wyświetl podsumowanie i na dobrą sprawę czytać uważnie wszystkie informacje poniżej.
I tylko tyle.



Komentarze

Dodaj komentarz