Klasický príbeh: doladíš si vzhľad, prepíšeš pár riadkov priamo v CSS šablóny, si spokojný — a o mesiac príde aktualizácia šablóny a tvoje úpravy sú fuč. Update prepísal súbory vlastnou verziou.
Riešenie nie je „neaktualizovať" (to je bezpečnostná diera). Riešenie je robiť úpravy tak, aby ich update nemal čo prepísať — cez override. Poďme na dve úrovne.
Úroveň 1: vlastné CSS cez user.css
Väčšina slušných Joomla šablón načíta user.css (alebo súbor s podobným menom — pozri dokumentáciu svojej šablóny), ktorý je určený priamo na tvoje úpravy a ktorý sa pri aktualizácii nedotýka.
Postup:
- V šablóne nájdi priečinok s CSS (zvyčajne css/),
- ak user.css neexistuje, vytvor ho,
- vlastné pravidlá píš tam, nie do hlavného template.css.
Keďže user.css sa načítava ako posledný, tvoje pravidlá prebijú pôvodné (a v prípade potreby dolaď špecificitu). Update šablóny prepíše template.css, ale user.css nechá tak — a tvoj vzhľad prežije.
Niektoré šablóny (a stránkové buildery) majú na to vlastné pole „Custom CSS" priamo v nastaveniach šablóny. Efekt je rovnaký — úpravy sú uložené mimo prepisovaných súborov.
Úroveň 2: template overrides (keď meníš aj HTML výstup)
Keď nechceš meniť len farby, ale aj ako Joomla niečo vykresľuje (rozloženie článku, výpis kategórie, modul), neprepisuj jadro ani súbory komponentu. Joomla má na to overrides:
- V administrácii: System → Templates → (tvoja šablóna) → Create Overrides,
- vyber výstup, ktorý chceš zmeniť (napr.
com_content→article), - Joomla ti vytvorí kópiu v priečinku
html/tvojej šablóny a tú upravuješ ty.
Override v html/ má prednosť pred pôvodným výstupom a update jadra ani rozšírenia ho neprepíše. Toto je čistý spôsob, ako meniť aj štruktúru bez toho, aby si sa bál aktualizovať.
Zlaté pravidlo
Nikdy neupravuj súbory, ktoré prepíše update. Ani jadro, ani
template.css, ani súbory komponentu. Vždy over:user.css/ Custom CSS pre štýl,html/overrides pre výstup.
Keď sa toho držíš, aktualizácie prestanú byť stresom — a to je celé tajomstvo. Update robíš pokojne, lebo vieš, že tvoje úpravy sú bezpečne bokom.
Súvisiace: Joomla základy pre začiatočníkov · Security checklist