D7 - Menu odkazující na hierarchické kategorie - zobrazení vnořených položek

Zdravím Honzo! Prosím, v D6 byla tvorba menu, které by zobrazilo položky nejen přímo s daným termínem, ale i z vnořených termínů celkem jednoduchá. Stačilo přidat parametr /all na konec cesty za číslo termínu dané kategorie. V D7 mi to ale vůbec nejde nastavit a nemůžu na to přijít. Neměl by někdo řešení?

Pro jistotu ještě konkrétně, např. tady na Maxíkovi, když kliknu na články, chci nejen články, označené tím termínem, ale i články ze všech podkategorii... Návody, tiskovky atd. dík za pomoc

Profile picture for user Jan Polzer

No, na Maxiorlovi jsou články, návody, tiskovky a aktuality samostatné tipy obsahu a je to filtrováno pomocí Views. Kategorie článků jsou pak to, co mám v rozbalené nabídce.

Co se týče toho /all, tak to netuším. Vím, že to šlo, ale snad nikdy jsem to nepoužil. Používá to, myslím, modul Taxonomy menu, tak koukněte na něj, jak v Drupalu 7 generuje cesty.

návštěvník

Vytvoří sice menu, ale to nezobrazuje následovníky. Modul sice existuje i pro D7, ale soubor readme.txt v něm je pro starou verzi - D6. Spousta voleb v D7 vůbec není, vlastně to jen vytvoří ty odkazy, ale další možnosti úplně chybí. Zkoušel jsem hledat info na drupal.org, ale né moc úspěšně. Zdá se, že to v sedmičce nefunguje, což je škoda, používal jsem to dost.

návštěvník

Ja som to zatial vyriesil tak, ze pri vytvarani prispevku su tam dve volby. Cize napr. kategoria Auta (povinna) a v druhom policku podkategoria Mercedes, Audi...

Takto som docielil, ze na stranke Auta mam zobrazene aj tie podkategorie. Ked si nevybral ziadnu podkategoriu, tak nevadi, lebo sa to ukaze na stranke Auta. Zaroven mam tie podkategori vtom menu pod Auta a tak sa da zase zobrazovat iba prispevky co tam spadaju. Na views som nemal zatial cas a kedze mi to takto pohodlne ide, tak asi ani nebudem potrebovat.

návštěvník

D7 v základní podobě neumí zpracovat ty argumenty typu /all nebo /x+y+z

Podařilo se konenečně přijít na to, jak to v D7 udělat. Stačí využít vestavěný vzor ve views "Taxonomy term", který emuluje funkčnost jádra a přidává schopnost zobrazit taky termíny v hloubce hierarchie. Požadovanou hloubku jde nastavit přes Contextuální filtr (Has taxonomy term ID (with depth)), který je implicitně nastavený na 0. Chtěl jsem zobrazit obsah krom aktuální kategorie také ze 2 úrovní vnoření, čili nastavil jsem zde 2 a funguje to bez problémů.

Není to ale ještě úplně ono.

Po kliknutí na menu, které odkazuje na termín v hierarchii, to korektně zobrazí přehled teaserů, včetně těch "následnovníků". Ale bohužel to nejde jednoduše nastavit tak, aby nad tímto přehledem byl zobrazen popis, který patří k tomu základnímu termínu.

Nejspíš by to šlo pomocí attachment views (přílohy), ale jak to celé nastavit, ty parametry, contextové filtry případně relace, to musím teprve vyzkoumat. Je to mnohem složitější, než to bývalo v D6...

 

Profile picture for user Jan Polzer

Ten popisek by myslím šel doplnit následovně: Udělejte nové View typu termíny taxonomie s kontextovým filtrem pro taxonomii ID a nechejte v něm zobrazit popisek termínu. Měla by se tedy zobrazit jen jedna položka.

V tom svém View pak přidejte do hlavičky položku jiné View a vyberte tam právě tohle nově definované.

Mělo by to pak fungovat, jak očekáváte. Chtěl jsem to někde také řešit, ale vymyslel jsem to jenom takto teoreticky, ještě jsem se nedostal k tomu, to ověřit. Kdyžtak budu rád za zpětnou vazbu.

návštěvník

Trošku jsem se v tom zpočátku ztrácel, pletly se mi vocabularyID a termID (správně je, jak  píšete, to druhé). Nicméně nakonec dělá to, co jsem chtěl :-). Doladím to a ještě napíšu + pošlu odkaz. Díky.

návštěvník

Pro případ, že by to někomu mohlo pomoct, přikládám v bodech popis, jak jsem postupoval:
1)1. Fáze: Vytvořil jsem nové View typu Taxonomy terms
2)Výběr termínů jsem zúžil na Vocabulary, kterou používám pro menu: (Taxonomy terms of) Kategorie
3)(Continue and edit)
4)Přidal jsem políčko Termín taxonomie – Term description, Apply all
5)      Vypnout Label, Apply all
6)      Políčko Termín taxonomie Název, které se nabízelo implicitně jsem odstranil z výběru, Apply all
7)      Contextual filter – add
8) Termín taxonomie – TermID, Apply all
9) When the filter value is NOT available - hide view, Apply
10)   Uložil

2. Fáze Přesunout se do view Taxonomy term (typu Obsah) (toto view je implicitně v Drupalu, je třeba ho ale zaplnout)
1) Hlavička – add
2) Vybrat - Global: View area, Apply (This displej)
3) View to insert View: termin_popis – Display: default - (tj. vložit připravené view z Fáze 1)
4) Inherit contextual filters, Apply (This display)
5) Uložit
A funguje...
Na http://test.kolaja.cz/kat/verejne-debaty je výsledek - Termín Veřejné debaty, pod ním je popis termínu (Přehled všech setkání…) a ještě níže je seznam všech úvodníků uzlů, na které odkazuje příslušný termín + včetně následovníků. Tj. termínu níže v hierarchii.
Díky za pomoc!

Odpovědět

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru