Drupal jako Headless CMS i backend treści
Headless Drupal oddziela zarządzanie treścią od warstwy prezentacji. Drupal przechowuje ustrukturyzowane treści, uprawnienia, proces redakcyjny, taksonomię, media i tłumaczenia. Aplikacje frontendowe pobierają je przez JSON:API, GraphQL lub dedykowane endpointy.
To ma sens, gdy frontend wykracza poza klasyczną stronę renderowaną w Twig: wiele kanałów, dedykowany zespół React lub Vue, interfejsy w stylu aplikacji, ambitne cele wydajnościowe albo hub treści dla kilku produktów.
Co dostarczamy w projektach Headless Drupal
W projektach Headless Drupal odpowiadamy za architekturę backendu: model treści, API, integrację warstw, podgląd, SEO i utrzymanie po starcie. Frontend wdrażamy wspólnie z Twoim zespołem lub end-to-end, z Drupal jako nadzorowanym źródłem treści.
Kiedy Headless Drupal nie jest dobrym wyborem
Model headless to decyzja architektoniczna, a nie automatyczny upgrade. Rekomendujemy go tylko wtedy, gdy strategia kanałów lub frontendu uzasadnia dodatkową złożoność operacyjną.
Kiedy Headless Drupal ma sens
Referencje Headless Drupal
PZPN to główny publiczny przykład tej kompetencji: Headless Drupal CMS jako backend treści dla organizacji sportowej o dużym ruchu.
Stos technologiczny Headless Drupal
Łączymy zwykle Drupal 10 lub 11 z JSON:API, GraphQL tam, gdzie pasuje, Next.js, React, Vue lub Nuxt oraz CDN i model hostingu pod podgląd, unieważnianie cache i SEO.
Headless Drupal – FAQ
Nie domyślnie. Headless Drupal to świadoma decyzja architektoniczna. Ma sens, gdy strategia kanałów, odpowiedzialność za frontend lub wymagania UX uzasadniają dodatkową warstwę. Dla wielu witryn treściowych sprzężony Drupal jest prostszy i wydajniejszy operacyjnie.
W tradycyjnym CMS ten sam system zarządza treścią i renderuje strony. W Headless Drupal backend udostępnia treści przez API, a osobny frontend odpowiada za prezentację. Daje to swobodę w UX i kanałach, ale zwiększa odpowiedzialność za integrację i utrzymanie dwóch warstw.
Koszt zależy od zakresu modelu treści, liczby kanałów, stopnia rozdzielenia, wymagań podglądu, SEO, integracji i tego, czy frontend buduje Droptica, czy Twój zespół. Po krótkim discovery możemy zaproponować fazowanie i widełki budżetowe.
Typowo od kilku miesięcy w górę, w zależności od migracji danych, złożoności frontendu i wymagań redakcyjnych. Pilotaż lub podejście stopniowo rozdzielone często skraca pierwszy release bez rezygnacji z docelowej architektury.
Najczęściej widzimy Next.js, React i Vue – z dobrym wsparciem dla JSON:API, podglądu i SSR. Wybór zależy od kompetencji zespołu, hostingu i modelu renderowania, a nie od samego CMS.
Tak, często zaczynamy od oceny, które części witryny warto rozdzielić w pierwszej kolejności. Podejście stopniowo rozdzielone lub hybrydowe pozwala przenieść wybrane obszary o dużej interakcji, zanim reszta pozostanie sprzężona.
Podgląd traktujemy jako wymaganie projektowe, nie domyślną funkcję. Wdrażamy m.in.:
- Next.js Preview Mode – podgląd wersji roboczych w czasie rzeczywistym
- Podgląd w iframe – w interfejsie administracyjnym Drupal
- Środowiska staging – pełne witryny do akceptacji treści
- Dedykowane moduły podglądu – rozwiązania dopasowane do procesu pracy redakcji
Pakiet next-drupal oferuje solidne wsparcie podglądu out of the box.
Formularze wymagają osobnej ścieżki, bo system formularzy Drupal nie jest bezpośrednio dostępny z frontendu. Stosujemy m.in.:
- Webform REST API – wysyłka do modułu Webform przez API
- Dedykowane endpointy API – własne handlery zgłoszeń
- Usługi zewnętrzne – integracje z HubSpot, Typeform i innymi
- React Hook Form – walidacja po stronie frontendu i wysyłka przez API
Architekturę headless można zabezpieczyć na poziomie porównywalnym ze sprzężonym Drupal, o ile od początku zaplanuje się API, tokeny, CORS, cache, frontend i infrastrukturę. Headless nie jest automatycznie bezpieczniejszy – dochodzą osobna warstwa frontendu i ekspozycja API.
- konfiguracja CORS i limitowanie żądań,
- uwierzytelnianie tokenami (OAuth/JWT),
- walidacja wejścia i nagłówki bezpieczeństwa,
- odseparowanie backendu Drupal od publicznego ruchu tam, gdzie to możliwe.
Tak – m.in.:
- aktualizacje bezpieczeństwa Drupal i zależności JavaScript,
- monitoring i optymalizacja wydajności,
- poprawki i rozwój funkcji,
- opcje wsparcia awaryjnego,
- proaktywne utrzymanie i kontrole stanu platformy.
Więcej o wsparciu Drupal.