.

Świętujemy 21. rocznicę Drupala! Jak pomagał firmom przez ten czas?

Wszystkiego najlepszego, Drupal! Minęło już 21 lat od wypuszczenia pierwszej stabilnej wersji naszego ulubionego open source’owego systemu zarządzania treścią. Z każdym kolejnym rokiem pozwala on na tworzenie coraz bardziej złożonych, nowoczesnych i responsywnych stron internetowych dla firm różnej wielkości. Przyjrzyjmy się możliwościom Drupala na przestrzeni lat, projektom, w których był wykorzystywany, oraz planowanym funkcjonalnościom.

Rozwój Drupala

Na długo zanim stał się systemem wykorzystywanym przez wiele serwisów i aplikacji na całym świecie (w tym należących do znanych firm internetowych, takich jak Pinterest), Drupal posiadał jedynie 18 plików zwanych modułami. Miały one możliwość interakcji zarówno pomiędzy sobą, jak i z core’owym frameworkiem. Tak właśnie działał Drupal 1.0.0, uruchomiony 15 stycznia 2001 roku.

Widok fragmentu repozytorium Drupala 1.0.0, stworzonego przez Driesa Buytaerta

Repozytorium Drupala 1.0 na GitLabie.

Pracując nad tą pierwszą wersją, Dries Buytaert – twórca Drupala – chciał stworzyć coś tylko dla siebie, jak pisał w swoim artykule na 20 rocznicę powstania Drupala. Jednak wkrótce po wydaniu wersji, programista zaczął myśleć o innych użytkownikach tego systemu. W rezultacie Drupal 2, również wydany w 2001 roku, zawierał wsparcie w zakresie tłumaczenia i lokalizacji, dzięki czemu użytkownicy mogli korzystać z innych języków niż angielski na swoich witrynach internetowych. Wersja ta zawierała również ulepszone moduły.

Drupal 3 i 4

Pół roku później entuzjaści tego CMS-a mogli już wypróbować Drupala 3, który wprowadził pojęcie node’ów. Były to typy treści, które można wykorzystać na stronie, np. artykuły czy podstrony. Miały one również zapewniać możliwość ponownego wykorzystania istniejącego kodu, a tym samym ograniczać wielkość i złożoność systemu. Wspomniane wyżej wydanie wprowadziło również dość istotne dla biznesu moduły – blog oraz statystyki.

Wraz z wydaniem prawie o rok starszego brata, Drupala 4, został uruchomiony bardzo ważny projekt – moduł Views. Dzięki niemu użytkownicy mogli tworzyć zapytania w interfejsie administratora. Umożliwiało to tworzenie listy elementów uporządkowanych według danego czynnika, np. listy silników posortowanych według ich pojemności. Taki element mógł zawierać również tytuł, nagłówek i inne dane. Stanowiło to duże ułatwienie dla mniej zorientowanych technicznie użytkowników, ponieważ nie musieli oni kodować żadnego z wyżej wymienionych elementów.

Drupal 5 i 6

Prezentem dla użytkowników Drupala z okazji 6 rocznicy jego powstania była nowa (piąta) wersja systemu. Wprowadziła ona możliwość tworzenia typów node’ów (np. opis tekstowy, baner), które do tej pory były możliwe tylko za pomocą modułu Content Construction Kit (CCK). Zmiana ta przyniosła poprawę w zakresie doświadczeń edytorskich.

Inne ulepszenia, które przyniósł Drupal 5 to:

  • lepsze zarządzanie użytkownikami, np. filtrowanie użytkowników według ról,
  • więcej logów – dla lepszego monitorowania tego, co dzieje się na stronie,
  • poprawa wydajności (dzięki czemu strony ładowały się szybciej).

Następnie ukazała się wersja 6, która pozwoliła na szybszą instalację projektu drupalowego. Podczas tego procesu, użytkownicy mogli wybierać z całej gamy dostępnych języków. Co więcej Drupal 6 zapewnił lepszą obsługę wielojęzycznego interfejsu oraz możliwość tłumaczenia witryny internetowej na bieżąco, za pomocą dodatkowego modułu.

Drupal 7 i 8

Wprowadzony jako przyjazny dla użytkownika i solidny CMS do tworzenia niemal każdego rodzaju stron internetowych (mikrowitryn, blogów, a nawet społeczności), Drupal zaczął zmierzać w kierunku platformy doświadczeń cyfrowych. Co na to wskazuje? Wraz z siódmą wersją pojawiło się wiele nowych modułów, które pozwoliły na jeszcze lepsze dostosowanie witryn internetowych do potrzeb danego biznesu i jego klientów. Usprawniono codzienną pracę redaktorów dzięki wbudowanej funkcji dodawania grafiki do treści. Natomiast wspomniane już ułatwienie dla mniej zorientowanych technicznie użytkowników końcowych – moduł Views – zyskało nową (trzecią) wersję. Jednak narzędzie to nadal wymagało dodatkowej instalacji. Kolejną dużą zmianą było przeniesienie całej funkcjonalności modułu CCK do Drupala 7, dzięki czemu możliwe stało się dodawanie pól do node’ów. Oznaczało to, że poza standardowymi polami – takimi jak tytuł czy body – można było dodać do node’a dowolne pole.

W kolejnym wydaniu wyżej wymieniony moduł został dodany do rdzenia Drupala. Poza tym Drupal 8 przyniósł rewolucyjne zmiany. System został przepisany z wykorzystaniem Symfony – frameworka PHP. Na skutek tego Drupal otrzymał także nowy silnik tworzenia szablonów – TWIG – dzięki któremu tworzenie szablonów stało się łatwiejsze i wygodniejsze.

Użyteczność tego systemu wzrosła również dzięki:

  • wdrożeniu nowego edytora stron,
  • dodaniu wersji mobilnej jako wbudowanej opcji,
  • włączeniu do rdzenia modułu Media, stabilnej wersji modułu Workflows (oba wydane w wersji Drupala 8.4), a także stabilnej wersji modułu Layout Builder (udostępnionego w wersji Drupala 8.7).

Drupal 9

Po zakończeniu wsparcia dla Drupala 8, co miało miejsce w listopadzie 2021 roku, Drupal 9 jest obecnie rekomendowaną wersją tego CMS-a. Wydanie tej wersji przyniosło kilka cennych usprawnień. Dwa z nich to poprawa szybkości ładowania strony dzięki wykorzystaniu PHP w wersji minimum 7.3, oraz skrócenie czasu tworzenia nowych modułów dzięki implementacji najnowszej (czwartej) wersji Symfony.

Innowacyjne funkcje i korzyści dla różnych biznesów

Na przestrzeni tak wielu lat i zmian technologicznych Drupal zawsze był (i nadal jest) aktualny. Dzieje się tak z powodu innowacji, napędzanych przez jego społeczność. Specjaliści (z różnych organizacji i freelancerzy) zgromadzeni wokół tego open source’owego systemu podążali za pojawiającymi się trendami, a także za zmieniającymi się potrzebami firm, dla których pracowali. W rezultacie Drupal oferuje wiele przydatnych funkcji i korzyści dla różnych przedsiębiorstw.

Elastyczność i skalowalność

Drupal sprawdza się zarówno w przypadku małych stron, takich jak portfolia, jak i dużych korporacyjnych witryn internetowych, posiadających osobne wersje dla różnych oddziałów lub kilka wersji językowych tej samej strony. To ostatnie jest możliwe dzięki instalacji Drupala multisite, która jest w stanie obsłużyć więcej niż jedną stronę internetową w jednej bazie kodu.

W miarę rozwoju firmy i jej potrzeb, witryna oparta na Drupalu może być dalej rozbudowywana. Jest to możliwe dzięki różnym właściwościom tego CMS-a, np. dzięki temu, że wykorzystuje on komponenty Symfony – frameworka postrzeganego w środowisku PHP jako najlepszy do tworzenia złożonych witryn internetowych.

Drupal może być dostosowany nie tylko do wielkości firmy, ale także do jej branży i specyficznych wymagań. Możemy go elastycznie dostosowywać dzięki dostępności różnorodnych modułów w rdzeniu i contribowych, do tworzenia, przykładowo, stron internetowych dla uczelni, portali informacyjnych, systemów intranetowych czy sklepów internetowych. Wprowadzenie opcji zakupów do Drupala jest możliwe dzięki modułowi Commerce. Pozwala stworzyć standardowy sklep internetowy, sklep sprzedający produkty cyfrowe, a nawet marketplace.

Open source’owy charakter

Możliwość korzystania ze wszystkich funkcji i modułów jest zapewniona dzięki w pełni open source’owej naturze Drupala. Oznacza to, że kod źródłowy jest dostępny za darmo dla każdego, więc zarówno osoby prywatne jak i firmy nie muszą płacić za licencję. Ponadto, w przeciwieństwie do komercyjnego oprogramowania, nie ma tu blokady dostawcy (vendor lock-in). Dzięki temu nie jesteśmy ograniczeni do korzystania ze wsparcia i usług tylko jednej organizacji (autorów komercyjnego rozwiązania), ale możemy swobodnie wybierać ekspertów od Drupal developmentu, z którymi chcemy współpracować.

Nie mając komercyjnego wsparcia, nie musimy się martwić, że system jest przestarzały, ponieważ programiści ze społeczności Drupala (Drupal Community) regularnie co pół roku wypuszczają nowe wersje z poprawkami i ulepszeniami.

Headless CMS

Kolejną wielką zaletą tego CMS-a i dowodem na jego ogromny rozwój jest fakt, że Drupal może być używany jako oprogramowanie typu headless. W takim przypadku system ten działa jako backendowe repozytorium treści, podczas gdy frontend jest stworzony z innych technologii i komunikuje się z Drupalem poprzez API. W jaki sposób podejście headless pomaga firmom? W ramach takiego rozwiązania, treści z CMS-a mogą być wysyłane do wielu kanałów. Oprócz strony internetowej, mogą być przekazywane przez API, między innymi, do aplikacji mobilnych czy IoT.

Przykłady wykorzystania Drupala w firmach na całym świecie

Bogate możliwości tego CMS-a zostały docenione przez właścicieli ponad miliona stron internetowych opartych na Drupalu. Na liście firm, które wybrały ten open source’owy system znajdują się tak znane nazwy jak NASA, Tesla, NBA, czy Grammy Awards.

W Droptica używamy Drupala na co dzień, tworząc witryny internetowe i aplikacje dla różnorodnych firm. Polski Związek Piłki Nożnej (PZPN) zyskał złożony system headless CMS oparty na Drupalu, który zasila danymi wewnętrzne systemy organizacji oraz strony internetowe Łączy Nas Piłka, Biblioteka PZPN i Z Podwórka na Stadion.

Strona Biblioteki PZPN to przykład możliwości Drupala w wersji headless

Strona internetowa Biblioteki PZPN

Dla Here.com, firmy zajmującej się tworzeniem map i lokalizacją, opracowaliśmy platformę doświadczeń cyfrowych, która działa jako punkt wyjścia do uruchamiania witryn internetowych. Po utworzeniu, nowa strona internetowa automatycznie zyskuje dobry wygląd i działanie. Redaktorzy mogą zacząć dodawać treści i dostosowywać elementy wizualne.

Strona Here.com jest częścią platformy doświadczeń cyfrowych, którą stworzyliśmy dla tej firmy

Strona firmowa Here.com

Pomagamy również programistom i mniej doświadczonym technicznie użytkownikom w tworzeniu stron internetowych, rozwijając naszą dystrybucję Drupala – Drooplera. Umożliwia ona łatwe tworzenie witryn z gotowych komponentów. Znajomość kodowania nie jest konieczna. Otrzymujemy działającą stronę, wyklikując jedynie poszczególne opcje konfiguracyjne.

Landing page Training Realm bazują na Drooplerze - dystrybucji Drupala

Strony docelowe Traning Realm wykorzystują Drooplera.

Drupal Association i Drupal Community

W jubileuszowym artykule nie sposób nie wspomnieć o dwóch szczególnych organizacjach, stojących za Drupalem. Pierwsza z nich, Drupal Association wspiera rozwój Drupala poprzez edukowanie ludzi na temat tego CMS-a, a także wspieranie projektów i inicjatyw z nim związanych. Każdy (zarówno osoby prywatne jak i firmy) może zostać członkiem Drupal Association poprzez finansowe wsparcie tej organizacji non-profit.

Drugą grupą osób jest Drupal Community. To właśnie pracy jej członków – wolontariuszy – zawdzięczamy cały kod tego systemu. Ta liczna społeczność ciągle się rozwija, jest aktywna, pomaga innym w korzystaniu z Drupala, a także dodaje do niego nowe funkcjonalności i ulepszenia. Osoby zaangażowane w rozwój Drupala możemy spotkać podczas największego z wydarzeń – DrupalCon North America, lub bardziej lokalnych – jak DrupalCamp Poland.

Rocznica Drupala – podsumowanie

Pracując z Drupalem od ponad dziesięciu lat, jesteśmy pewni jego ciągłego rozwoju i korzyści dla biznesu. Z niecierpliwością czekamy na premierę Drupala 10, która jest planowana na czerwiec 2022 roku. Podobnie jak aktualizacja z wersji ósmej do dziewiątej, Drupal 10 ma być ewolucją, a nie rewolucją. Co nowego przyniesie?

  • Olivero jako domyślny motyw,
  • wprowadzenie CKEditor 5,
  • wprowadzenie automatycznej aktualizacji.

To jedynie kilka z planowanych usprawnień, ale jesteśmy przekonani, że (wraz z pozostałymi) uczynią pracę z Drupalem jeszcze bardziej płynną.

2. SEO dla strony internetowej na Drupalu