Szablon Joomla - gotowy template, child template czy własny projekt strony?

Szablon Joomla - gotowy i własny projekt

Szablon Joomla decyduje o znacznie większej liczbie elementów niż kolory, fonty i wygląd strony głównej. Od jego konstrukcji zależą między innymi rozmieszczenie modułów, sposób prezentacji komponentów, responsywność, ilość ładowanego kodu, możliwość późniejszych zmian i część problemów pojawiających się przy aktualizacjach. Dlatego wybór pomiędzy gotowym template a indywidualnie przygotowanym szablonem nie powinien sprowadzać się do pytania "który wygląda ładniej?". Znacznie ważniejsze jest to, jak strona ma działać za dwa, trzy lub pięć lat.

Czym właściwie jest szablon Joomla?

W potocznym znaczeniu szablon strony kojarzy się przede wszystkim z jej wyglądem. W Joomla jego rola jest szersza. Template określa strukturę prezentacji strony, udostępnia pozycje dla modułów, zawiera arkusze stylów i inne zasoby oraz może wpływać na sposób prezentowania treści generowanych przez komponenty i moduły.

Jednym z podstawowych plików szablonu jest templateDetails.xml. To właśnie w nim definiowane są między innymi informacje instalacyjne, pliki, pozycje modułów oraz pola konfiguracyjne stylu szablonu. Joomla posiada ponadto system nadpisywania widoków rozszerzeń, dzięki któremu template może zmienić sposób generowania określonego fragmentu HTML bez modyfikowania oryginalnego kodu komponentu.

Dlatego dwa serwisy korzystające z tej samej Joomla i tych samych komponentów mogą wyglądać i zachowywać się zupełnie inaczej.

Gotowy, modyfikowany czy własny - trzy drogi

W praktyce wybór nie ogranicza się do dwóch skrajności: "gotowy szablon Joomla" albo "wszystko napisane od zera". Pomiędzy nimi znajduje się bardzo szeroki obszar modyfikacji.

Podejście Punkt wyjścia Zakres zmian
Gotowy template Gotowy produkt Kolory, logo, moduły, konfiguracja
Szablon bazowy + własne modyfikacje Template rodzic CSS, child template, override'y, układ
Własny projekt Projekt funkcjonalny i graficzny Struktura przygotowana pod konkretny serwis

Ten środkowy wariant jest często pomijany w prostych porównaniach, a w Joomla ma szczególne znaczenie. System obsługuje child templates oraz template overrides, więc można zachować sprawdzony szablon bazowy, a własne zmiany utrzymywać oddzielnie.

Gotowy szablon Joomla - kiedy ma sens?

Gotowe szablony Joomla są kuszące z oczywistego powodu - już w chwili zakupu można zobaczyć stronę demonstracyjną, układ podstron, menu, typografię i dostępne warianty modułów. Nie trzeba zaczynać projektowania od pustej kartki.

To może być bardzo dobre rozwiązanie dla niewielkiej strony, jeśli jej potrzeby pokrywają się z konstrukcją template. Przykładem może być prosta strona firmowa zawierająca ofertę, informacje o przedsiębiorstwie, kilka artykułów oraz formularz kontaktowy.

Problem zaczyna się wtedy, gdy wybiera się template na podstawie efektownej strony demonstracyjnej, a dopiero później próbuje dopasować do niego rzeczywistą zawartość firmy.

Demo szablonu pokazuje najlepszy możliwy scenariusz

Strona demonstracyjna została przygotowana specjalnie po to, aby dany projekt prezentował się atrakcyjnie. Zdjęcia mają odpowiednie proporcje, teksty dokładnie pasują do bloków, nagłówki mają właściwą długość, a liczba elementów jest dopasowana do layoutu.

W prawdziwym serwisie może się później okazać, że firma ma siedem usług zamiast czterech, tytuł ważnego produktu zajmuje trzy linie, opis trzeba znacznie rozbudować, a wymagany moduł nie mieści się w miejscu przewidzianym przez projektanta.

Wtedy zaczyna się nie projektowanie strony dla treści, lecz dopasowywanie treści do gotowego projektu.

Dobry gotowy szablon nie musi być gorszy

Nie ma podstaw, aby z góry uznawać gotowy template za rozwiązanie nieprofesjonalne. Dobrze przygotowany i regularnie rozwijany szablon może być stabilną bazą serwisu. Ważniejsze są jakość kodu, zgodność z aktualną Joomla, sposób aktualizacji i to, czy konstrukcja template rzeczywiście odpowiada wymaganiom witryny.

Największy problem nie brzmi więc "gotowy czy własny?", lecz "czy wybrane rozwiązanie pasuje do konkretnego projektu?".

Darmowy szablon Joomla - oszczędność czy ograniczenie?

Fraza "darmowe szablony Joomla" nadal przyciąga użytkowników, ponieważ przy małym projekcie możliwość uruchomienia strony bez kosztu licencji wygląda atrakcyjnie. Sam fakt, że template jest darmowy, nie przesądza jednak ani o jego jakości, ani o przydatności.

Przed użyciem bezpłatnego szablonu warto zwrócić uwagę przede wszystkim na to, czy:

  • jest zgodny z aktualną wersją Joomla,
  • projekt jest nadal rozwijany,
  • dostępna jest dokumentacja,
  • wiadomo, w jaki sposób wykonywane są aktualizacje,
  • szablon nie wymaga starych, niewspieranych rozszerzeń,
  • można go bezpiecznie modyfikować bez edycji plików, które później zostaną nadpisane.

W przypadku strony testowej albo niewielkiego projektu hobbystycznego ograniczona funkcjonalność może nie stanowić problemu. W serwisie firmowym koszt samej licencji na template jest natomiast zwykle niewielką częścią całkowitego kosztu wykonania i późniejszego utrzymania witryny.

Szablon oparty na rozbudowanym frameworku

Osobną kategorię tworzą szablony korzystające z własnych frameworków, kreatorów układu i rozbudowanych paneli konfiguracyjnych. Pozwalają one bez programowania zmieniać wiele elementów wyglądu, budować sekcje i wybierać warianty prezentacji.

To duża wygoda, szczególnie jeśli właściciel strony chce samodzielnie wykonywać część zmian. Jednocześnie warto sprawdzić, jaka część serwisu zaczyna zależeć od konkretnego frameworka.

Im więcej funkcji zostaje przeniesionych do systemu szablonowego, tym większe znaczenie ma pytanie:

co stanie się ze stroną, jeśli za kilka lat będziemy chcieli zmienić template?

Jeżeli szablon odpowiada wyłącznie za prezentację, wymiana jest stosunkowo łatwa. Jeżeli przejął również budowanie treści, układ podstron i część funkcjonalności, późniejsza zmiana może przypominać przebudowę całego serwisu.

Child template - rozwiązanie pomiędzy gotowym a własnym

Joomla obsługuje szablony potomne, czyli child templates. Pozwalają one dziedziczyć elementy szablonu rodzica i przechowywać własne różnice oddzielnie. Dzięki temu nie trzeba kopiować całej konstrukcji bazowego template tylko po to, aby zmienić wybrane elementy. Oficjalna dokumentacja Joomla wskazuje child templates właśnie jako mechanizm pozwalający definiować odstępstwa od szablonu nadrzędnego.

To szczególnie wartościowe rozwiązanie, gdy:

  • podstawowa konstrukcja template odpowiada projektowi,
  • potrzebna jest własna identyfikacja wizualna,
  • część widoków ma zostać przebudowana,
  • chcemy ograniczyć ryzyko utraty zmian podczas aktualizacji szablonu bazowego.

Dlaczego nie należy modyfikować wszystkiego bezpośrednio?

Jeśli zmienimy pliki dostarczone razem z szablonem bazowym, kolejna aktualizacja może zastąpić je nowymi wersjami. Dokumentacja Joomla ostrzega przed bezpośrednim modyfikowaniem plików dostarczonych z Cassiopeia właśnie dlatego, że zmiany mogą zostać utracone podczas aktualizacji.

Oddzielenie własnych modyfikacji od kodu bazowego jest więc nie tylko kwestią porządku. Ma bezpośredni wpływ na możliwość późniejszego utrzymywania strony.

Własny szablon Joomla - co naprawdę oznacza?

Określenie "indywidualny szablon" bywa używane bardzo swobodnie. Czasami oznacza template zaprojektowany i zakodowany pod konkretną witrynę, a czasami gotowy szablon, w którym zmieniono logo, font i kolor główny.

Własny projekt powinien zaczynać się nie od wyboru template, lecz od analizy treści i funkcji.

Najpierw ustalamy:

  • jakie typy podstron będą potrzebne,
  • jak ma wyglądać nawigacja,
  • które elementy będą powtarzalne,
  • jakie moduły mają występować w poszczególnych sekcjach,
  • które funkcje Joomla i dodatkowych komponentów trzeba zaprezentować użytkownikowi,
  • jak serwis ma zachowywać się na małym ekranie,
  • które elementy muszą być łatwe do zmiany przez administratora.

Dopiero później powstaje layout.

To zasadnicza różnica pomiędzy własnym projektem a zakupem gotowego template. W pierwszym przypadku szablon powstaje dla strony. W drugim strona jest budowana w ramach możliwości istniejącego szablonu.

Własny nie znaczy napisany całkowicie od zera

Indywidualna witryna nie musi oznaczać ponownego tworzenia każdego mechanizmu dostępnego już w Joomla. Można wykorzystywać system szablonów, modułów, layoutów, child templates i override'ów, a jednocześnie przygotować wygląd i zachowanie strony specjalnie dla danego projektu.

Profesjonalizacja nie polega na odrzucaniu gotowych mechanizmów CMS, ale na użyciu ich tam, gdzie pomagają, zamiast budowania wszystkiego ponownie.

Template overrides - jedna z największych zalet Joomla

Template override pozwala zmienić sposób prezentacji danych generowanych przez komponent albo moduł bez edytowania jego oryginalnego widoku. Joomla kopiuje odpowiedni layout do struktury szablonu i od tego momentu można modyfikować własną wersję prezentacji. Oficjalna dokumentacja pokazuje ten mechanizm zarówno dla modułów, jak i bardziej ogólnych layoutów systemu.

Przykładowo komponent może standardowo generować artykuł w określonym układzie:

tytuł - informacje dodatkowe - treść - informacje o autorze

Projekt może natomiast wymagać:

kategoria - tytuł - lead - zdjęcie - treść - dane autora

Nie trzeba w tym celu zmieniać plików samego komponentu. Własny widok można przygotować po stronie template.

Override ma również swoją cenę

Każde własne nadpisanie staje się fragmentem kodu, który trzeba później utrzymywać. Jeśli w kolejnej wersji Joomla zmieni się bazowy widok komponentu, stare override'y mogą wymagać kontroli lub aktualizacji. Dokumentacja zmian Joomla 6 wskazuje wprost przykłady starszego kodu w template overrides, który po zmianach systemowych może wymagać usunięcia lub dostosowania.

Dlatego zasada "im więcej override'ów, tym lepszy projekt" byłaby równie błędna jak unikanie ich za wszelką cenę. Nadpisanie ma sens wtedy, kiedy rzeczywiście rozwiązuje problem projektu.

Gotowy i własny szablon a wydajność

Często można spotkać uproszczenie, według którego własny template jest zawsze szybki, a gotowy zawsze ciężki. Takiego założenia nie da się obronić.

Źle napisany własny szablon może ładować więcej zasobów niż dobrze przygotowany produkt komercyjny. Z kolei rozbudowany template przeznaczony do dziesiątek różnych typów stron może dostarczać mechanizmy, których konkretny serwis nigdy nie wykorzystuje.

Z punktu widzenia wydajności warto analizować między innymi:

  • liczbę i wielkość arkuszy CSS,
  • JavaScript uruchamiany na stronie,
  • zewnętrzne biblioteki,
  • fonty,
  • sposób ładowania obrazów,
  • zasoby frameworka szablonowego,
  • kod dodawany przez dodatkowe moduły,
  • to, czy poszczególne zasoby są potrzebne na każdym URL-u.

Joomla posiada również Web Asset Manager służący do zarządzania zasobami i ich zależnościami, co pozwala twórcom rozszerzeń i szablonów kontrolować sposób dołączania CSS oraz JavaScript.

Czy rodzaj szablonu ma wpływ na SEO?

Google nie klasyfikuje strony jako lepszej tylko dlatego, że używa ona indywidualnego szablonu zamiast gotowego template. Rodzaj projektu może jednak pośrednio wpływać na wiele elementów istotnych dla jakości strony.

Szablon ma wpływ między innymi na:

  • strukturę generowanego HTML,
  • hierarchię elementów na stronie,
  • wygodę korzystania z serwisu na urządzeniach mobilnych,
  • sposób prezentacji nagłówków i treści,
  • linkowanie nawigacyjne,
  • szybkość renderowania frontendu,
  • stabilność układu,
  • dostępność elementów dla użytkownika.

Można więc mieć świetnie zoptymalizowany gotowy szablon oraz źle przygotowany projekt indywidualny. O wyniku decyduje wykonanie, a nie etykieta produktu.

Co stanie się przy kolejnej aktualizacji Joomla?

To pytanie powinno pojawić się jeszcze przed wyborem szablonu, a nie dopiero kilka lat później.

Dobrze utrzymywana strona musi przechodzić kolejne aktualizacje Joomla, PHP, komponentów i samego template. Im więcej nietypowych zależności oraz ręcznych zmian wykonano bezpośrednio w plikach zewnętrznego produktu, tym trudniejszy może być ten proces.

Warto znać odpowiedź na cztery pytania:

  • kto aktualizuje template,
  • jak długo producent zamierza go rozwijać,
  • gdzie znajdują się własne modyfikacje,
  • co stanie się z nimi po zainstalowaniu nowej wersji.

Joomla 6 przyniosła również zmiany dotyczące kompatybilności kodu, które mogą dotykać starszych override'ów. To kolejny argument za utrzymywaniem własnych zmian w uporządkowany i możliwy do audytu sposób.

Cena zakupu a rzeczywisty koszt szablonu

Gotowy template może kosztować niewiele w porównaniu z projektem indywidualnym. Nie oznacza to jednak automatycznie, że cała strona będzie proporcjonalnie tańsza.

Do ceny początkowej trzeba doliczyć czas potrzebny na:

  • konfigurację szablonu,
  • dopasowanie identyfikacji wizualnej,
  • przebudowę układów, które nie pasują do projektu,
  • modyfikacje CSS,
  • override'y,
  • dostosowanie wersji mobilnej,
  • usunięcie niepotrzebnych elementów,
  • późniejsze aktualizacje.

Może się więc zdarzyć, że template kupiony tanio jest dobrym ekonomicznie wyborem. Może też zdarzyć się odwrotnie - liczba koniecznych modyfikacji jest tak duża, że próba dostosowania gotowego produktu staje się droższa niż przygotowanie prostszej konstrukcji dopasowanej do potrzeb od początku.

Najdroższy bywa szablon wybrany źle

Koszt zmiany template po uruchomieniu serwisu może być znacznie większy niż różnica pomiędzy dwoma rozwiązaniami na początku projektu. Szczególnie jeśli treść została mocno powiązana z frameworkiem lub kreatorem używanym przez pierwszy szablon.

Dlatego przy większym serwisie warto patrzeć na koszt całego cyklu życia strony, a nie tylko cenę uruchomienia.

Gotowy template czy własny projekt - porównanie

Cecha Gotowy szablon Własny projekt
Czas startu Zwykle krótszy Dłuższy etap projektowania
Koszt początkowy Zwykle niższy Zwykle wyższy
Dopasowanie do treści W granicach konstrukcji template Projektowane pod konkretną treść
Unikalność Zależna od zakresu modyfikacji Duża
Zbędne funkcje Mogą występować Można ich uniknąć już w projekcie
Aktualizacje Zależne również od producenta Zależne od jakości własnego kodu i utrzymania
Rozbudowa Może być ograniczona konstrukcją template Można ją przewidzieć w architekturze
Zależność od dostawcy Może być znaczna przy rozbudowanym frameworku Zależy od dokumentacji i sposobu wykonania projektu

Które rozwiązanie wybrać do konkretnej strony?

Niewielka strona firmowa

Jeżeli serwis ma kilka typowych podstron, prostą ofertę i nie wymaga nietypowych funkcji, dobry gotowy template albo lekko zmodyfikowany szablon bazowy może być całkowicie racjonalnym wyborem. Projektowanie rozbudowanego systemu od początku nie zawsze przyniesie korzyści proporcjonalne do kosztu.

Firma z wyraźną identyfikacją wizualną

Jeżeli wygląd serwisu ma być silnie związany z marką, gotowy szablon może wymagać tak wielu zmian, że bardziej sensowny staje się child template albo indywidualny projekt oparty na prostszej bazie.

Portal internetowy

W dużym serwisie najważniejsze stają się typy treści, struktura kategorii, różne układy artykułów, moduły, reklamy, nawigacja oraz możliwość rozwoju. W takim przypadku układ przygotowany pod rzeczywistą architekturę portalu może przynieść znacznie większe korzyści niż adaptowanie uniwersalnego demo.

Serwis z dedykowanymi komponentami

Jeżeli Joomla obsługuje własne komponenty biznesowe, katalog, panel klienta lub niestandardowe dane, szablon powinien być projektowany razem z tymi funkcjami. Wygląd nie jest wtedy oddzielnym dodatkiem nakładanym na gotowy system.

Starsza strona wymagająca modernizacji

Nie zawsze trzeba wymieniać cały szablon. Jeżeli konstrukcja jest poprawna, czasami wystarczy uporządkować override'y, usunąć przestarzały kod, poprawić CSS i dostosować template do aktualnej Joomla. Innym razem wieloletnie zależności powodują, że próba dalszego rozwijania starej konstrukcji przestaje być opłacalna.

Nie istnieje więc uniwersalnie najlepszy szablon Joomla. Gotowy template jest dobrym rozwiązaniem wtedy, gdy jego konstrukcja odpowiada wymaganiom strony. Child template sprawdza się, gdy dobra baza wymaga własnej warstwy projektu. Indywidualny szablon ma największy sens wtedy, gdy to treść, funkcjonalność i sposób korzystania z witryny powinny wyznaczać układ, a nie możliwości wcześniej wybranego produktu.

Najważniejszym pytaniem przed rozpoczęciem projektu nie powinno być "który szablon wybrać?", ale "czego ta strona będzie potrzebowała również po kilku latach rozwoju?". Template, który pozwala łatwo wystartować, ale blokuje późniejszą rozbudowę, może okazać się znacznie droższy niż rozwiązanie wymagające większej pracy na początku.

Komentarze