Joomla je už v základnej inštalácii vybavená množstvom funkcií. Umožňuje publikovať články, vytvárať kontaktné formuláre, spravovať používateľov, zobrazovať navigáciu alebo budovať viacjazyčný web. Keď však potrebujete internetový obchod, rezervačný systém, galériu, rozšírené formuláre alebo prepojenie s externou službou, môžete systém doplniť pomocou rozšírení.
Medzi najdôležitejšie typy rozšírení v Joomla patria komponenty, moduly a pluginy. Každý z nich plní inú úlohu, no pri väčších riešeniach často spolupracujú ako súčasti jedného balíka.
Čo sú rozšírenia v Joomla
Rozšírenie je doplnkový softvér, ktorý pridáva do Joomla novú funkciu alebo mení spôsob fungovania existujúcej funkcie. Rozšírenia môžu byť súčasťou samotného jadra Joomla alebo ich môže vytvoriť externý vývojár.
Joomla rozlišuje viacero typov rozšírení. Okrem komponentov, modulov a pluginov sem patria aj šablóny, jazykové balíky, knižnice, inštalačné balíky a súborové rozšírenia. Pre bežného správcu webu sú však najdôležitejšie práve prvé tri typy.
Ich základné rozdelenie možno zhrnúť takto:
| Typ rozšírenia | Hlavná úloha | Typické umiestnenie alebo spôsob činnosti |
|---|---|---|
| Komponent | Spravuje hlavnú funkciu a jej údaje | Hlavná obsahová časť stránky a administrácia |
| Modul | Zobrazuje menší blok informácií | Pozícia v šablóne alebo vybrané stránky |
| Plugin | Reaguje na udalosť a mení správanie systému | Pracuje prevažne na pozadí |
Komponenty: hlavné aplikácie v Joomla
Komponent je najrozsiahlejší typ rozšírenia. Možno si ho predstaviť ako samostatnú aplikáciu, ktorá funguje v prostredí Joomla.
Ak by bola Joomla operačným systémom, komponent by predstavoval program nainštalovaný v tomto systéme. Môže spravovať údaje, vytvárať vlastné stránky, prijímať formuláre a poskytovať rozhranie pre administrátorov aj návštevníkov.
Každá bežná stránka vytvorená v Joomla zobrazuje vo svojej hlavnej obsahovej časti výstup jedného komponentu. Komponent spracuje požiadavku návštevníka a rozhodne, aký obsah alebo funkciu má stránka zobraziť.
Komponent má spravidla dve časti
Väčšina komponentov pozostáva z:
- administratívnej časti, v ktorej správca vytvára a upravuje údaje,
- verejnej časti, ktorá výsledné údaje zobrazuje návštevníkom webu.
Typickým príkladom je komponent článkov. V administrácii pomocou neho vytvárate a organizujete články, zatiaľ čo na verejnej stránke ich návštevníci čítajú.
Príklady komponentov v základnej Joomla
Jadro Joomla obsahuje viacero komponentov, napríklad:
- články a kategórie,
- kontakty,
- médiá,
- presmerovania,
- inteligentné vyhľadávanie,
- značky,
- používateľov.
Komponenty tretích strán môžu do webu pridať napríklad:
- internetový obchod,
- rezervačný systém,
- fotogalériu,
- diskusné fórum,
- newsletter,
- správu udalostí,
- elektronické formuláre,
- zálohovanie webu.
Kedy potrebujete komponent
Komponent je vhodný vtedy, keď má nová funkcia:
- vlastné stránky alebo položky menu,
- vlastné údaje uložené v databáze,
- samostatnú administráciu,
- zoznamy, formuláre a detailné zobrazenia,
- rozsiahlejšiu logiku alebo pracovný postup.
Ak teda potrebujete spravovať produkty, objednávky, rezervácie, udalosti alebo iné štruktúrované záznamy, pravdepodobne pôjde o komponent.
Moduly: menšie bloky obsahu na stránke
Modul je ľahšie a jednoduchšie rozšírenie, ktoré zobrazuje určitú informáciu alebo menšiu funkciu v konkrétnej časti stránky.
Moduly sa zvyčajne zobrazujú v pozíciách definovaných šablónou. Môžu byť umiestnené napríklad v hlavičke, bočnom paneli, pod hlavným obsahom alebo v päte webu. Oficiálna dokumentácia ich opisuje ako menšie bloky umiestnené okolo hlavného komponentu stránky.
Bežné príklady modulov
Medzi moduly dodávané so systémom Joomla patria napríklad:
- hlavné alebo vedľajšie menu,
- prihlasovací formulár,
- najnovšie články,
- najčítanejšie články,
- navigačná cesta,
- výber jazyka,
- vlastný HTML obsah,
- náhodný obrázok,
- informácia o prihlásených používateľoch.
Rozšírenia tretích strán môžu poskytovať moduly pre slideshow, kalendár, sociálne siete, košík, zoznam produktov alebo reklamný banner.
Pozícia modulu
Každá šablóna má vlastný súbor modulových pozícií. Ich názvy môžu byť napríklad:
menu,sidebar-left,sidebar-right,top,bottom,footer.
Pri vytváraní modulu vyberiete, v ktorej pozícii sa má zobraziť. Skutočné umiestnenie na stránke však určuje šablóna.
Rovnaký modul je možné zobraziť na všetkých stránkach, iba na vybraných položkách menu alebo na všetkých stránkach okrem určených položiek. Vďaka tomu môže byť napríklad prihlasovací formulár dostupný iba v členskej sekcii a reklamný banner len v konkrétnej kategórii.
Jeden typ modulu, viac použití
Z jedného typu modulu môžete vytvoriť viac samostatných inštancií.
Napríklad modul Vlastný obsah môžete použiť:
- raz pre kontaktné údaje v päte,
- druhýkrát pre upozornenie v bočnom paneli,
- tretíkrát pre reklamný blok na titulnej stránke.
Každá inštancia má vlastný názov, obsah, pozíciu, nastavenie prístupu a priradenie k položkám menu.
Moduly môžu zobrazovať údaje komponentov
Modul často funguje ako doplnok komponentu. Komponent článkov napríklad zobrazuje konkrétny článok v hlavnej časti stránky, zatiaľ čo modul v bočnom paneli môže zobrazovať najnovšie alebo súvisiace články.
Moduly však nemusia byť vždy napojené na komponent. Modul vlastného obsahu môže zobrazovať obyčajný text, obrázok alebo HTML kód bez toho, aby spracúval údaje z iného rozšírenia.
Pluginy: nenápadné funkcie pracujúce na pozadí
Plugin je rozšírenie, ktoré reaguje na konkrétnu udalosť v systéme. Na rozdiel od komponentu spravidla nevytvára samostatnú stránku a na rozdiel od modulu nemusí zobrazovať viditeľný blok.
Plugin čaká, kým v Joomla nastane určitá udalosť. Následne vykoná pridelenú činnosť.
Takouto udalosťou môže byť napríklad:
- načítanie stránky,
- príprava textu článku,
- zostavenie formulára,
- prihlásenie používateľa,
- uloženie údajov,
- vytvorenie používateľského účtu,
- odoslanie požiadavky systému.
Plugin môže prijaté údaje skontrolovať, doplniť alebo zmeniť ešte predtým, ako ich Joomla zobrazí alebo uloží.
Príklady použitia pluginov
Plugin môže zabezpečovať napríklad:
- overovanie používateľov,
- viacfaktorové prihlasovanie,
- ochranu formulára pomocou CAPTCHA,
- spracovanie špeciálnych značiek v článkoch,
- načítanie modulu do článku,
- úpravu textu pred zobrazením,
- indexovanie obsahu pre vyhľadávanie,
- zaznamenávanie používateľských činností,
- prepojenie s externou službou,
- automatické doplnenie údajov do formulára.
Niektoré pluginy majú viditeľný výsledok, ale samotný plugin väčšinou pracuje na pozadí. Používateľ môže vidieť napríklad tlačidlo, upravený text alebo dodatočné pole vo formulári, hoci za touto zmenou stojí plugin reagujúci na udalosť systému.
Skupiny pluginov
Pluginy sú rozdelené do skupín podľa oblasti, v ktorej pracujú. V Joomla sa môžete stretnúť napríklad so skupinami:
- Content – spracovanie obsahu,
- System – systémové funkcie,
- User – udalosti spojené s používateľmi,
- Authentication – overovanie prihlásenia,
- Editors – textové editory,
- Fields – vlastné polia,
- Finder – inteligentné vyhľadávanie,
- Action Log – zaznamenávanie činností.
Toto rozdelenie pomáha Joomla načítať len tie pluginy, ktoré môžu reagovať na práve vykonávanú udalosť.
Ako komponenty, moduly a pluginy spolupracujú
Pri jednoduchom rozšírení môže postačovať jeden modul alebo plugin. Väčšie riešenia však často obsahujú všetky tri typy.
Predstavme si internetový obchod:
- komponent spravuje produkty, kategórie, zákazníkov a objednávky,
- modul zobrazuje nákupný košík, odporúčané produkty alebo najnovšie položky,
- plugin zabezpečuje platobnú bránu, spôsob dopravy alebo reakciu na vytvorenie objednávky.
Podobne môže fungovať obsahový web:
- komponent článkov zobrazí článok,
- modul najnovších článkov zobrazí odkazy v bočnom paneli,
- obsahový plugin upraví text článku alebo doň vloží ďalší prvok.
Používateľ pritom môže všetky súčasti nainštalovať jediným ZIP súborom. Takýto súbor býva inštalačným balíkom, ktorý obsahuje komponent, moduly, pluginy a prípadne spoločnú knižnicu. Joomla balíky umožňujú nainštalovať a odinštalovať viac vzájomne závislých rozšírení naraz.
Ako určiť, ktorý typ rozšírenia potrebujete
Pri výbere si môžete položiť tri jednoduché otázky.
Potrebujem samostatnú aplikáciu alebo správu údajov?
Ak má funkcia vlastnú administráciu, databázové záznamy, stránky a položky menu, pôjde pravdepodobne o komponent.
Potrebujem zobraziť menší blok na určitej pozícii?
Ak chcete zobraziť menu, zoznam článkov, kontaktné údaje, banner alebo prihlasovací formulár, potrebujete modul.
Potrebujem zmeniť správanie Joomla pri určitej udalosti?
Ak má funkcia reagovať na uloženie článku, prihlásenie používateľa, prípravu obsahu alebo odoslanie formulára, pôjde pravdepodobne o plugin.
V praxi však výber typu rozšírenia vykonáva jeho vývojár. Správca webu sa častejšie stretne s tým, že jedno riešenie obsahuje niekoľko vzájomne prepojených častí.
Časté omyly pri práci s rozšíreniami
Modul nie je to isté ako položka menu
Položka menu vytvára odkaz na stránku alebo funkciu komponentu. Modul menu zabezpečuje, aby sa samotné menu zobrazilo na stránke.
Môžete teda vytvoriť menu a jeho položky, ale bez publikovaného modulu menu sa navigácia nemusí návštevníkom vôbec zobraziť.
Plugin nemusí mať vlastnú stránku
Po inštalácii pluginu často nevznikne nová položka v ponuke Komponenty. Plugin sa spravuje v zozname pluginov a jeho výsledok sa prejaví až vtedy, keď nastane príslušná udalosť.
Komponent nemusí byť doplnok tretej strany
Aj základné funkcie Joomla sú vytvorené ako komponenty. Komponentom je správa článkov, kontaktov, médií aj používateľov. Architektúra jadra a externých rozšírení preto používa rovnaké základné princípy.
Nainštalovaný plugin nemusí byť automaticky zapnutý
Niektoré pluginy sa po inštalácii aktivujú automaticky, iné je potrebné manuálne povoliť. Ak rozšírenie nefunguje podľa očakávania, skontrolujte stav všetkých súvisiacich pluginov a modulov.
Rozšírenia inštalujte s rozvahou
Každé nainštalované rozšírenie predstavuje ďalší kód, ktorý je potrebné udržiavať. Preto neinštalujte doplnok iba preto, že by sa mohol niekedy hodiť.
Pred inštaláciou skontrolujte:
- podporované verzie Joomla a PHP,
- dátum poslednej aktualizácie,
- dostupnosť dokumentácie a podpory,
- dôveryhodnosť vývojára,
- spôsob poskytovania bezpečnostných aktualizácií,
- skúsenosti ostatných používateľov.
Rozšírenie najskôr otestujte na skúšobnej kópii webu a pred inštaláciou vytvorte úplnú zálohu. Nepoužívané a opustené rozšírenia je vhodnejšie odinštalovať než iba vypnúť. Oficiálny Joomla Extensions Directory obsahuje aj sekcie venované zraniteľným, opraveným a opusteným rozšíreniam.
Zhrnutie
Komponenty, moduly a pluginy tvoria základ rozšíriteľnosti Joomla, ale každý typ má inú úlohu:
- komponent je hlavná aplikácia, ktorá spravuje údaje a vytvára obsah stránky,
- modul je menší blok zobrazovaný vo vybranej pozícii šablóny,
- plugin reaguje na udalosť a upravuje alebo rozširuje správanie systému.
Komponent možno prirovnať k hlavnému stroju, modul k jeho informačnému panelu a plugin k senzoru, ktorý vykoná určitú činnosť po splnení podmienky. Keď pochopíte rozdiel medzi týmito tromi typmi, budete sa jednoduchšie orientovať v správe Joomla a lepšie vyhodnotíte, čo jednotlivé rozšírenia po inštalácii pridávajú do vášho webu.
