Headless commerce to podejście architektoniczne, które zyskuje na popularności. Nazwa pochodzi od oddzielenia warstwy prezentacji (frontend, to co widzi klient) od logiki biznesowej (backend: katalog produktów, koszyk, zamówienia). Komunikacja między nimi odbywa się przez API.
Jak to działa
W tradycyjnym sklepie PrestaShop, WooCommerce czy Magento, frontend i backend są ze sobą zintegrowane w jednej aplikacji. W headless, silnik e-commerce udostępnia API. Frontend jest zbudowany osobno, w React, Next.js, Vue lub innym frameworku JavaScript, pobiera dane przez API i renderuje interfejs.
Zalety
- Szybkość frontendu - aplikacje Next.js z renderingiem po stronie serwera lub statycznym generowaniem są szybsze niż tradycyjne sklepy PHP renderujące HTML przy każdym żądaniu.
- Elastyczność designu - pełna swoboda projektowania interfejsu bez ograniczeń szablonów i motywów.
- Jeden backend, wiele frontendów - ten sam silnik może obsługiwać sklep webowy, aplikację mobilną i kiosk z jednego miejsca.
Wady i ograniczenia
- Złożoność - dwa osobne systemy zamiast jednego. Więcej do utrzymania, więcej punktów awarii.
- Koszt wdrożenia - headless to projekt dla doświadczonego zespołu. Dla małego sklepu nakład pracy jest nieproporcjonalny do korzyści.
- Ekosystem modułów - moduły PrestaShop działają po stronie backendu, ale ich interfejsy nie przenoszą się automatycznie na headless frontend.
Dla kogo headless ma sens
Headless commerce opłaca się przy specyficznych wymaganiach wydajnościowych, niestandardowym designie trudnym do osiągnięcia przez szablony, lub gdy obsługujesz wiele kanałów sprzedaży z jednego backendu. Dla typowego sklepu tradycyjne podejście jest prostsze i równie efektywne po optymalizacji.
PrestaShop i headless
PS udostępnia WebService API, choć historycznie było ono ograniczone. Nowoczesne podejście to dedykowane moduły API lub własna warstwa REST na bazie PS. Kilka projektów open source ułatwia ten setup dla konkretnych frameworków frontendowych.