Reklama

Drupal: jak pomocí Views vytvořit taby se sadou stránek

Taby nebo záložky jsou v Drupalu standardní ovládací prvky. Typicky jsou v nich odkazy pro zobrazení či úpravu stránky. Mohu ale sloužit jako zajímavý ovládací prvek pro návštěvníka webu. Využijte je ve spojení s Views.

Reklama

V následujícím návodu budu předpokládat, že už máte alespoň základní znalost práce s modulem Views. Bez dlouhého úvodu si tedy řekněme, co bude cílem tohoto návodu.

Představme si, že máme webové stránky nějaké firmy, na kterých chceme představit nějaké produkty. Tyto produkty jsou rozděleny různými vlastnostmi a na webu bychom rádi měli jejich výpis. Nikoli však ve formě kategorií, což by se v základní instalaci Drupalu nabízelo.

Nebudeme ani vytvářet simulaci výpisu kategorií pomocí Views, řekněme že z důvodu, abychom se vyhnuli úpravě ostatních výpisů na webu. Budeme mít tedy obsah typu produkt, v něm nějaké políčko pro určení vlastností a na stránce je zobrazíme jako několik výpisů seskupených do tabů.

Příprava obsahu

Vytvořte si nový typ obsahu nazvaný Produkt. Kromě nadpisu a obsahového políčka mu ještě přiřaďte políčko Typ produktu založené na poli s textovým seznamem a widgetem Seznam. Vložte do něj na samostatné řádky výběr z těchto hodnot:

  • Pro děti
  • Pro dospělé
  • Pro zvířata

Dále ještě přidejte klasické obrázkové políčko pro nahrávání fotografií k danému produktu.

Drupal, Views a taby

Tím je vkládání obsahu pro náš příklad připraveno a můžete vložit několik záznamů. Buď ručně, nebo pomocí modulu Devel Generate.

Vytvoření Views

Nyní vytvoříme stránku s výpisem produktů. Pomocí Views samozřejmě nic složitého. My si však daný výpis ještě rozdělíme na čtyři taby - Produkty, Pro děti, Pro dospělé a Pro zvířata. První z tabů, Produkty bude zároveň umístěn do hlavního navigačního menu.

Přejděte tedy do administrační části Struktura > Views a přidejte nové View. Nazvěte jej Produkty a nechejte zobrazit ve formě stránky obsah typu produkty.

Drupal, Views a taby

Zobrazení nastavte třeba na mřížku a políčka, ze kterých vyberete obrázek produktu se stylem thumbnail a název produktu.

Drupal, Views a taby

Nyní nás bude zajímat položka menu. Klepněte na položku Žádné menu a vytvořte Default menu tab. Jako Nadpis zadejte Produkty a Váhu nastavte na nulu. V dalším kroku vyberte vytvoření Normální položky menu, opět zadejte jako název Produkty a vyberte Hlavní menu. Adresu stránky upravte na produkty/vsechno.

V definici View klepněte na tlačítko Add a přidejte další stránku. Její nadpis nastavte na Produkty pro děti (pozor, změnu nastavte jen pro danou část View, nikoli pro všechno, stejně tak u dalších věcí, které budeme měnit).

Drupal, Views a taby

Důležitá je cesta ke stránce. Zatímco výpis všech produktů je na adrese produkty/vsechno, výpis produktů pro děti musíme dát s lomítkem za touto výchozí adresou - tedy na produkty/pro-deti. Do menu u tohoto výpisu přidejte položku Menu tab a nazvěte ji Pro děti, váhu nastavte na jedničku.

Dále upravte (opět jen pro tuto část View) filtr, do kterého přidáte kritérium Obsah: Typ produktu a určíte, že chcete zobrazit jen položky pro děti.

Drupal, Views a taby

Z rozbalovací nabídky u položky view stránka vyberte funkci clone stránka a stránku naklonovanou z výpisu produktů pro děti upravte tak, aby byla na adrese produkty/pro-dospele, měla odpovídající popisek tabu a správně nastavený filtr. Poté přidejte ještě jednu stránku s výpisem produktů pro zvířata. View následně uložte.

Výsledek

Nyní se podívejte na svůj web. V hlavním menu by měla přibýt položka Produkty. Po kliknutí na ni se dostanete na adresu produkty. Tu jsme nikde nedefinovali, ale Views je natolik schopné, že si ji vezme jako první segment z definovaných URL pro jednotlivé stránky.

Pod nadpisem stránky pak budou zobrazeny jednotlivé taby odkazující již na příslušné výpisy. Pokud byste je náhodou neviděli, značí to, že jste udělali chybu v definici adres. Všechny totiž musejí být ve tvaru základ/konkrétní-stránka.

Drupal, Views a taby

Tagy: 

Volná místa v IT

Další pracovní místa najdete na stránce Volná pracovní místa v IT.

Reklama

Komentáře

Zdravím, zkouším dle tohoto návodu vytvořit TAB MENU, ale narazil jsem na problém v tomto odstavci:Nyní nás bude zajímat položka menu. Klepněte na položku Žádné menu a vytvořte Default menu tab. Jako Nadpis zadejte Produkty a Váhu nastavte na nulu. V dalším kroku vyberte vytvořeníNormální položky menu, opět zadejte jako název Produkty a vyberte Hlavní menu. Adresu stránky upravte na produkty/vsechno.

Stane se to, že po zadání v první části odstavce zadám váhu, tak mam ještě možnost políčka MENU, ale nikde není možnost vytvořit NORMÁLNÍ POLOŽKY MENU, znovu je pojmenovat a ještě zadat adresu. Buď je nepřesný popis a nebo se změnil Drupal.
Můžete prosím tuto klíčovou oblast upravit v textu a případně udělat podrobnější screeny?Děkuji JS

Nevím. Zkusil jsem to na aktuální verzi Views a je to stejné. Tak buď jsem to špatně vysvětlil nebo nevím.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Máte pravdu. Je to správně. Chyba byla v mé nepozornosti ve vybrání možnosti menu tab a default menu tab. To bude tím, že jsem dvě noci už nespal, tak jsem neviděl :-) Ale kdyby bylo víc obrázků, určitě bych se neztratil:-)Děkuji.

Dobrý den,
super návod, jen se chci zeptat jestli jde nějak udělat aby se nezobrazoval tab se všema položkama (Produkty), ale pouze Pro děti, Pro dospělé atd.

Děkuji

No, možná na základě nějakého filtru. Ale asi bych to nyní řešil spíše pomocí modulu Menu Block a vhodně to nastyloval.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.