WordPress vs. Joomla – nomenklatura

„Jeśli wejdziesz między wrony, musisz krakać jak i one” – to przysłowie jest niezwykle prawdziwe w półświatkach tworzonych przez zwolenników różnych CMS-ów. Dlatego warto się zapoznać z podstawowym słownictwem.

Tłumaczenia będą posiadać następujący układ:

Nazwa z WordPressa - Nazwa w Joomla!
Opis

Motyw – Szablon

Idea i motywów w obu CMS-ach jest taka sama – służą do całkowitej zmiany wyglądu witryny. Nazewnictwo wzięło się od słowa „theme” (WordPress) i „template” (Joomla!). Aczkolwiek teoretycznie można obie nazwy stosować zamiennie, przy czym w panelach administracyjnych znajdziemy wspomniane nazwy.

Wtyczka – Komponent, Moduł, Plugin

W WordPressie poza motywami istnieje jeden popularny sposób rozszerzania funkcjonalności CMS-a: pluginy (No dobrze, istnieją też drop-iny, ale to dosyć zaawansowany i rzadko poruszany temat, który możemy w tym wypadku pominąć). Joomla posiada bardziej rozbudowany podział:

komponent – z reguły duże rozszerzenie, które wymaga dodatkowych podstron do zarządzania nim. Porównując – np. WooCommerce w świecie Joomla! byłby własnie komponentem. Dodatkowo komponent może tworzyć własne typy pozycji menu oraz generować własne podstrony. Warto też zauwazyć, że w Joomla! jest preinstalowanych kilkanaście komponentów np. komponent treści, komponent banerów, komponent linków itd. W WordPressie są to po prostu funkcjonalności nierozerwalnie związane z tym CMS-em, które nie są traktowane jako dodatkowe rozszerzenia.

moduł – odpowiednik WordPressowego widżetu – jest wyświetlany na odpowiedniej pozycji modułów. Jest to rozszerzenie z reguły o mniej rozbudowanej niż komponent funkcjonalności, którym zarządza się przez panel opcji dostępny przy edycji ustawień modułu. Porównując go do komponentu – stanowi część danej podstrony, podczas gdy komponent tworzy daną podstronę.

plugin – teoretycznie najprostsza forma rozszerzenia (choć czasem zdarzają się pośród pluginów prawdziwe kombajny) – pozwala modyfikować treści i zachowanie podstron poprzez swój kod. Sam w sobie z reguły nie generuje dodatkowej treści, służy raczej do modyfikacji już istniejących zasobów.

Widżet – Moduł

To już w zasadzie zostało opisane w poprzednim punkcie. Teraz tylko dodam, że w Joomla! moduły mogą być przypisane do konkretnych podstron, języków co w WordPressie przy bazowej funkcjonalności jest niemożliwe i wymaga użycia dodatkowych wtyczek.

Panel boczny – Pozycja modułów

Funkcjonalnie oba elementy są w zasadzie takie same – każdy szablon/motyw posiada obszar w którym można umieścić dodatkowe bloki treści (moduły/widżety) według określonej kolejności. Takie bloki są definiowane w szablonie lub generowanie dynamicznie przez rozszerzenia.

Kokpit – Panel administracyjny

Główny obszar dowodzenia CMS-em.

Shortcode – Plugin

W WordPressie zapis [xyz] pozwala wstawić odpowiednią treść. W Joomla można wykorzystać zapis {xyz}, który zadziała de facto jak shortcode – przy czym w wypadku pluginów to tylko jedna z możliwych funkcjonalności. Co warte zauważenia: shortcode może być zdefiniowany w motywie, natomiast plugin w Joomla! jest zawsze oddzielnym bytem.

Akcja – zdarzenie

Akcje to odpowiednik zdarzeń (event) w Joomla!, które są wyzwalane w odpowiednich fragmentach kodu. Z reguły zdarzenia są obsługiwane przez odpowiednie pluginy. W wypadku akcji z WordPressa możemy dołączyć kod obsługi danej akcji w dowolnym miejscu naszej wtyczki/motywu.

Filter – Nadpisywanie

W Joomla! nie ma prawdziwego odpowiednika filtrów, ale jest ich namiastka w postaci możliwości nadpisywania kluczowych elementów generowanych przez Joomla!: kontenerów otaczających moduły, bloku stronicowania, wiadomości systemowych i plików widoków rozszerzeń. Inną możliwością jest dobranie się do wynikowego kodu zwracanego przez zdarzenia lub klasę JResponse. Dla odmiany Joomla! ma przewagę w możliwości nadpisywania widoków – w wypadku WordPressa możliwość nadpisywania widoków wtyczek/widżetów zależy od dobrej woli autora wtyczki (czyli tego czy zadbał o taką funkcjonalność – np. w BuddyPress takie coś istnieje), w wypadku Joomla!, jeżeli rozszerzenie jest tworzone zgodnie ze standardami, to można nadpisać wszystkie jego widoki.

Podsumowanie

Jak widać wszystkie kluczowe elementy posiadają swoje odpowiedniki, wyraźnie świadczy to o tym, że pomimo ogromnych różnic pomiędzy WordPressem i Joomla! pewne zagadnienia dążą do wspólnych rozwiązań, które różnią się bardziej na poziomie funkcjonalności niż idei i architektury.