Keď sa povie menu na webovej stránke, väčšina používateľov si predstaví jednoduchý zoznam odkazov v hornej časti stránky. V Joomla však menu plní oveľa dôležitejšiu úlohu. Nie je iba navigačným prvkom, ale patrí medzi základné mechanizmy, pomocou ktorých Joomla určuje, aký typ stránky sa má návštevníkovi zobraziť, aký obsah má byť dostupný a ktoré moduly sa majú na danej stránke zobrazovať.
Oficiálna dokumentácia Joomla dokonca označuje položky menu za základnú štruktúru Joomla webu: každá položka menu odkazuje na určitý typ stránky a zvolený typ položky určuje, čo sa po jej otvorení zobrazí.
Preto je dobré prestať vnímať menu iba ako „lištu s odkazmi“ a chápať ho ako jednu z hlavných súčastí informačnej architektúry webu.
Menu, položka menu a modul menu nie sú to isté
Pri práci s Joomla je potrebné rozlišovať tri pojmy:
- menu,
- položka menu,
- modul Menu.
Aj keď spolu úzko súvisia, každý z nich má inú úlohu.
Menu
Menu je kontajner, v ktorom sú uložené jednotlivé položky menu.
Môžete mať napríklad:
- Hlavné menu,
- Menu v päte,
- Používateľské menu,
- Servisné menu,
- Skryté menu.
Jeden web pritom môže obsahovať viacero samostatných menu.
Položka menu
Položka menu (Menu Item) je konkrétny odkaz na určitý typ stránky.
Môže napríklad zobrazovať:
- jeden článok,
- blog kategórie,
- zoznam článkov,
- kontaktný formulár,
- výsledky vyhľadávania,
- prihlasovací formulár,
- používateľský profil,
- obsah externého komponentu,
- externú URL adresu.
Typ položky menu určuje, aký druh stránky Joomla vytvorí.
Modul Menu
Samotné vytvorenie menu ešte neznamená, že ho návštevník uvidí.
Na zobrazenie menu na frontende sa používa modul typu Menu. Pri jeho nastavení určíte, ktoré menu má zobrazovať a na akej pozícii šablóny sa má nachádzať. Oficiálna dokumentácia preto pri vytvorení nového menu uvádza tri samostatné kroky: vytvorenie menu, vytvorenie položiek menu a vytvorenie jedného alebo viacerých modulov, ktoré menu zobrazia.
To je dôležitý princíp:
Menu obsahuje navigačnú štruktúru. Modul menu ju fyzicky zobrazí na stránke.
Prečo je menu v Joomla také dôležité
Na klasickej statickej stránke môže byť menu iba skupinou HTML odkazov.
V Joomla má každá položka menu vlastnú konfiguráciu a môže ovplyvňovať spôsob, akým sa konkrétna stránka vytvorí.
Položka menu môže okrem cieľového obsahu ovplyvniť napríklad:
- typ zobrazenia stránky,
- rozloženie článkov,
- názov stránky,
- SEO nastavenia,
- prístupové práva,
- jazyk,
- vzhľad prostredníctvom štýlu šablóny,
- zobrazovanie modulov.
Preto menu do veľkej miery určuje, ako je Joomla web poskladaný.
Menu a články: dôležitý rozdiel
Jednou z najčastejších nejasností začiatočníkov je vzťah medzi článkom a položkou menu.
Predstavme si, že vytvoríte článok:
O projekte
Článok už v databáze existuje, ale nemusí byť automaticky súčasťou hlavného menu.
Ak chcete návštevníkovi vytvoriť viditeľný odkaz O projekte, vytvoríte položku menu typu Jeden článok (Single Article) a priradíte jej daný článok.
V Joomla teda platí:
článok predstavuje obsah, položka menu predstavuje spôsob, ako sa k nemu používateľ dostane.
Zároveň nie každý článok musí mať vlastnú položku menu. Články môžu byť dostupné napríklad prostredníctvom blogu kategórie, vyhľadávania, modulu alebo interného odkazu.
Typ položky menu určuje obsah stránky
Pri vytváraní novej položky menu musíte zvoliť jej Menu Item Type.
To je jeden z najdôležitejších krokov.
Ak napríklad zvolíte:
Articles → Single Article
Joomla zobrazí jeden konkrétny článok.
Ak zvolíte:
Articles → Category Blog
Joomla vytvorí stránku s článkami určitej kategórie v blogovom rozložení. Oficiálna dokumentácia opisuje Category Blog ako výpis, ktorý môže obsahovať jeden alebo viac hlavných článkov a ďalšie články zoradené v blogovej štruktúre.
Ak zvolíte:
Articles → List All Categories
môžete vytvoriť hierarchický zoznam kategórií.
Možnosti však závisia aj od nainštalovaných komponentov. Nové rozšírenia môžu do zoznamu pridávať ďalšie typy položiek menu.
Menu prepája Joomla komponenty s návštevníkom
Technicky možno menu chápať ako jeden z hlavných spôsobov, ktorým používateľ vstupuje do jednotlivých komponentov Joomla.
Jadro Joomla obsahuje napríklad komponent:
- článkov,
- kontaktov,
- vyhľadávania,
- používateľov,
- menu.
Samotná dokumentácia vývoja Joomla uvádza com_menus ako komponent zodpovedný za správu menu a položiek menu.
Ak nainštalujete napríklad komponent kalendára udalostí, rezervačný systém alebo internetový obchod, často sa v zozname typov položiek menu objavia jeho vlastné možnosti.
Menu sa tak stáva mostom medzi funkciou komponentu a konkrétnou stránkou, ktorú návštevník vidí.
Hierarchické menu a podmenu
Položky menu môžete usporiadať do viacerých úrovní.
Napríklad:
Joomla
- Čo je Joomla
- Základné pojmy
- Články a kategórie
- Menu v Joomla
Návody
- Inštalácia
- Administrácia
- Správa obsahu
Bezpečnosť
- Aktualizácie
- Zálohovanie
- Ochrana administrácie
Každej položke môžete nastaviť nadradenú položku, čím vzniká hierarchická štruktúra.
Takáto štruktúra sa potom môže na frontende zobraziť ako:
- rozbaľovacie menu,
- viacúrovňová navigácia,
- mobilné menu,
- bočné menu.
Samotný spôsob vizuálneho zobrazenia závisí najmä od použitej šablóny.
Jedno menu môžete zobraziť rôznymi spôsobmi
Pretože menu a modul menu sú oddelené, môžete to isté menu zobraziť prostredníctvom viacerých modulov.
Napríklad môžete mať jedno menu Hlavná navigácia, ale:
- jeden modul ho zobrazí v hornej časti desktopovej stránky,
- druhý ho použije pre mobilnú navigáciu,
- tretí zobrazí iba určitú časť menu v bočnom paneli.
To je ďalší príklad flexibility Joomla.
Menu obsahuje logickú štruktúru, zatiaľ čo modul rieši spôsob a miesto jej zobrazenia.
Menu ovplyvňuje zobrazovanie modulov
Toto je jedna z vlastností, pri ktorej menu prestáva byť iba navigáciou.
Joomla umožňuje priraďovať moduly ku konkrétnym položkám menu. Dokumentácia Joomla výslovne uvádza, že moduly možno priradiť podľa menu itemu, takže napríklad prihlasovací modul môže byť zobrazený iba na vybraných stránkach.
Pri module môžete typicky nastaviť:
- na všetkých stránkach,
- na žiadnej stránke,
- iba na vybraných stránkach,
- prípadne opačný výber podľa dostupnej konfigurácie.
To znamená, že položky menu pomáhajú definovať kontext jednotlivých stránok.
Praktický príklad
Predstavme si sekciu Bezpečnosť.
Na stránkach tejto sekcie chcete v pravom bočnom paneli zobrazovať:
Najnovšie články o bezpečnosti
Na stránkach sekcie Šablóny však tento modul nechcete.
Modul jednoducho priradíte iba k položkám menu súvisiacim s bezpečnosťou.
Menu môže ovplyvniť vzhľad stránky
Joomla umožňuje priradiť rôznym položkám menu odlišné štýly šablóny.
V praxi teda môžete mať:
- bežné stránky s jedným vzhľadom,
- špeciálnu landing page s iným rozložením,
- sekciu dokumentácie s odlišnou konfiguráciou,
- úvodnú stránku s vlastným dizajnom.
Tento princíp vychádza z oddelenia obsahu od prezentácie. Šablóna určuje vizuálnu podobu stránky a Joomla môže použiť rôzne štýly šablóny podľa konkrétnej položky menu. Tento spôsob práce je súčasťou flexibility Joomla šablón.
Menu a SEO
Menu má význam aj pre optimalizáciu webu pre vyhľadávače.
Logická navigácia pomáha vytvárať prehľadnú informačnú architektúru a jednotlivé položky menu zároveň poskytujú vlastné možnosti konfigurácie stránky.
Pri ich vytváraní venujte pozornosť najmä:
- zrozumiteľnému názvu položky,
- aliasu,
- titulku stránky,
- logickému zaradeniu do hierarchie,
- jednoduchosti URL,
- internému prelinkovaniu.
Názov položky menu pritom nemusí byť totožný s názvom článku.
Článok môže mať napríklad názov:
Ako bezpečne aktualizovať Joomla v rámci rovnakej hlavnej verzie
ale v menu môže stačiť:
Aktualizácia Joomla
Navigácia by mala byť predovšetkým stručná a zrozumiteľná.
Alias a URL adresa
Každá položka menu má svoj alias, ktorý Joomla využíva pri vytváraní SEF URL adries.
Ak máte napríklad:
Návody → Inštalácia Joomla
výsledná adresa môže mať podobu:
mojweb.sk/navody/instalacia-joomla
Presná výsledná URL závisí od konfigurácie webu, smerovania Joomla a prípadných ďalších nastavení.
Dobre navrhnutá hierarchia menu preto môže prispieť aj k prehľadnej štruktúre URL.
Hlavná stránka je tiež položka menu
Aj domovská stránka Joomla webu je založená na položke menu.
Jednu položku označíte ako predvolenú – Default Page.
Tá sa potom zobrazí pri otvorení základnej adresy webu, napríklad:
https://www.mojweb.sk/
Úvodná stránka preto nemusí byť nejakým osobitným dokumentom uloženým mimo Joomla. Môže ísť napríklad o:
- blog hlavných článkov,
- jeden článok,
- stránku externého komponentu,
- špeciálne rozloženie vytvorené page builderom.
Skryté menu
Zaujímavým postupom je vytvorenie menu, ktoré návštevníkovi vôbec nemusíte vizuálne zobraziť.
Niekedy sa označuje ako skryté menu.
Môže obsahovať položky určené pre stránky, ktoré:
- nechcete zobrazovať v hlavnej navigácii,
- ale chcete pre ne vytvoriť vlastnú URL,
- potrebujete k nim priradiť moduly,
- chcete im nastaviť samostatný štýl alebo ďalšie parametre.
Samotné menu totiž nemusí mať publikovaný modul.
Položky existujú v Joomla a môžu plniť svoju technickú úlohu, hoci používateľ nikde nevidí navigačný blok s ich názvami.
Externé odkazy
Nie každá položka menu musí smerovať na obsah Joomla.
Typ URL umožňuje vytvoriť odkaz na externú webovú stránku. Oficiálna dokumentácia ho popisuje ako položku určenú na vytvorenie odkazu na samostatnú externú webovú lokalitu.
V menu tak môžete mať napríklad:
- Facebook,
- zákaznícku zónu,
- rezervačný systém,
- partnerský web,
- externú dokumentáciu.
Položka typu oddeľovač alebo nadpis
V rozsiahlejších navigáciách nemusí mať každá položka funkciu klasického odkazu.
Systémové typy položiek možno využiť napríklad ako:
- nadpis skupiny,
- oddeľovač,
- rodičovskú položku pre podmenu.
Takýmto spôsobom môžete vytvárať komplexnejšiu navigačnú štruktúru bez toho, aby každá úroveň musela otvárať samostatnú stránku.
Menu a prístupové práva
Jednotlivým položkám menu môžete priradiť úroveň prístupu.
Vďaka tomu možno vytvoriť napríklad:
Verejné menu
- Úvod
- Články
- Kontakt
Menu po prihlásení
- Môj profil
- Interné dokumenty
- Zákaznícka sekcia
- Odhlásiť sa
Joomla potom podľa používateľských oprávnení rozhodne, ktoré položky má konkrétnemu návštevníkovi sprístupniť.
Toto je veľmi užitočné pre:
- intranety,
- členské weby,
- zákaznícke portály,
- vzdelávacie systémy,
- interné firemné stránky.
Viacjazyčné menu
Pri viacjazyčnom Joomla webe sa menu stáva ešte dôležitejším.
Jednotlivým položkám môžete priraďovať jazyky a vytvárať navigačné štruktúry pre jednotlivé jazykové verzie webu. Joomla má viacjazyčnosť zabudovanú v jadre a rozlišuje aj jazyky nainštalovaného systému a jazyky samotného obsahu.
Napríklad slovenská verzia môže obsahovať:
O nás
a anglická:
About us
Joomla môže prostredníctvom jazykových asociácií prepájať zodpovedajúce položky.
Ako vytvoriť dobrú štruktúru menu
Pri novom webe je lákavé pridávať položky postupne podľa toho, ako vzniká obsah.
Lepším riešením je menu najskôr premyslieť ako súčasť informačnej architektúry.
1. Určite hlavné potreby návštevníka
Položky hlavného menu by mali odpovedať na otázku:
Čo tu návštevník pravdepodobne hľadá?
Nie:
Ako máme obsah usporiadaný v administrácii?
2. Obmedzte počet hlavných položiek
Príliš rozsiahle hlavné menu návštevníkovi orientáciu neuľahčuje.
Podrobnejší obsah radšej presuňte do podmenu.
3. Používajte zrozumiteľné názvy
Dobré:
- Joomla
- Návody
- Bezpečnosť
- Rozšírenia
- Šablóny
Menej vhodné:
- Informácie
- Ostatné
- Ďalšie
- Rôzne
Používateľ by mal už z názvu vedieť, čo približne nájde po kliknutí.
4. Nezamieňajte kategórie a menu
Štruktúra kategórií a menu môže byť podobná, ale nemusí byť totožná.
Kategórie organizujú obsah v administrácii.
Menu organizuje spôsob, akým sa návštevník po webe pohybuje.
To sú dve rozdielne úlohy.
Príklad menu pre informačný Joomla portál
Hlavná navigácia môže vyzerať napríklad takto:
Joomla
- Čo je Joomla
- Pre koho je Joomla vhodná
- Ako funguje Joomla
- Základné pojmy
- Články a kategórie
- Menu v Joomla
- Moduly v Joomla
Návody
- Inštalácia
- Administrácia
- Správa obsahu
Upgrade
- Aktualizácie
- Migrácie
- Kontrolné zoznamy
Bezpečnosť
- Zálohovanie
- Aktualizácie
- Ochrana administrácie
Rozšírenia
Šablóny
Novinky
Takáto navigácia používateľovi vytvára logickú mapu webu bez ohľadu na to, ako presne sú jednotlivé články uložené v kategóriách.
Najčastejšie chyby pri práci s menu
Príliš veľa položiek
Ak má hlavné menu pätnásť alebo dvadsať rovnocenných položiek, používateľ sa v ňom môže strácať.
Príliš hlboká hierarchia
Viacúrovňové menu je užitočné, ale štyri či päť úrovní vnorenia môže byť nepraktických najmä na mobilných zariadeniach.
Nejasné názvy
Položka Informácie návštevníkovi veľa nepovie.
Konkrétne pomenovanie býva vhodnejšie.
Duplicitné odkazy
Nie je potrebné mať tú istú stránku bez jasného dôvodu na viacerých miestach hlavnej navigácie.
Zamieňanie menu s kategóriami
Nie každá kategória potrebuje položku menu a nie každá položka menu musí predstavovať kategóriu.
Zabudnuté priradenie modulov
Po vytvorení novej položky sa môže stať, že sa stránka zobrazí bez očakávaného bočného panelu, banneru alebo iného modulu. Dôvodom môže byť práve priradenie modulov podľa položiek menu.
Menu ako riadiaci prvok stránky
Keď si spojíme všetky uvedené vlastnosti, zistíme, že položka menu môže v Joomla rozhodovať o oveľa väčšom množstve vecí než iba o cieli odkazu.
Môže určovať:
Čo sa zobrazí?
Typ komponentu a obsah stránky.
Ako sa to zobrazí?
Rozloženie a nastavenia konkrétneho typu položky.
Komu sa to zobrazí?
Úroveň prístupu.
V akom jazyku?
Jazykové priradenie.
Aké ďalšie prvky sa zobrazia?
Moduly priradené k položke menu.
Aký vzhľad bude stránka používať?
Priradený štýl šablóny.
Práve preto je menu jedným z kľúčových prvkov Joomla architektúry.
Zhrnutie
Menu v Joomla je oveľa viac než zoznam odkazov.
Joomla oddeľuje samotné menu, jeho jednotlivé položky a modul, ktorý navigáciu návštevníkovi zobrazuje. Položka menu zároveň určuje typ stránky a môže ovplyvniť jej obsah, URL, prístupové práva, jazyk, moduly aj vzhľad.
Najdôležitejšie je zapamätať si:
Menu = navigačná štruktúra.
Položka menu = definícia konkrétnej stránky.
Modul Menu = spôsob, akým sa menu zobrazí návštevníkovi.
Keď tento princíp pochopíte, bude vám oveľa jasnejšie nielen vytváranie navigácie, ale aj celkový spôsob, akým Joomla skladá jednotlivé stránky webu.
