Bezgłowy WordPress: kompletny przewodnik

Opublikowany: 2023-03-01

Jak zapewne już wiesz, WordPress to potężna platforma do tworzenia stron internetowych. Jako system zarządzania treścią (CMS), WordPress oferuje funkcje publikowania, które są łatwe w użyciu. Możesz rozszerzyć WordPressa, aby robić prawie wszystko, co chcesz. Ale czy słyszałeś o „bezgłowym” WordPressie?

W tym przewodniku dowiesz się dokładnie, czym jest bezgłowy WordPress. Zrozumiesz sytuacje, które mogą skłonić Cię do korzystania z niego i czasy, w których korzystanie z WordPressa bez głowy nie jest najlepszym pomysłem. Poza tym przyjrzymy się niektórym najpopularniejszym rozwiązaniom front-end i stack, które są zwykle używane w przypadku bezobsługowych wdrożeń WordPress.

Zanim zagłębisz się w WordPress jako bezgłowy CMS, ważne jest, aby najpierw zrozumieć, czym dokładnie jest CMS i jakie problemy ma rozwiązywać. Co sprawia, że ​​ktoś jest „bez głowy” i dlaczego w niektórych przypadkach może to być przydatne? Komu może się to przydać?

Bezgłowy WordPress

Co to jest system zarządzania treścią (CMS)?

System zarządzania treścią po stronie serwera lub CMS dominuje w „zapleczu” ogromnej większości przeglądanych obecnie stron internetowych. We wczesnych dniach Internetu wszystkie witryny były budowane bezpośrednio ze statycznej strony HTML. Aby utworzyć nowy post lub artykuł, musisz utworzyć zupełnie nowy dokument HTML. Następnie dodałbyś go do serwera wraz z jego zasobami, takimi jak obrazy, inne multimedia i pliki CSS. Następnie musisz utworzyć link do nowej strony w nawigacji w witrynie i na innych stronach, które się do niej odwołują.

Zarządzanie treścią przed systemami zarządzania treścią

Tworzenie stron internetowych w latach 1995-2000 mogło być niewiarygodnie nieefektywne. Tworzenie i przesyłanie nowych plików za każdym razem, gdy pojawiały się nowe treści, było stosunkowo łatwe. Ale nieuchronnie nowa treść wymagała zmian w starszej treści. A ponieważ witryny rozrosły się do setek i tysięcy stron, szybkie wprowadzanie zmian było niemożliwe jako proces ręczny. Nawet przy pewnej automatyzacji może to być powolne.

Prezentacja i treść były mieszane

Powiązany problem polegał na tym, że treść i jej prezentacja (np. układ i style projektowania) były nieelastyczne i często mieszane ze sobą w dokumencie HTML. Aby naprawdę rozwiązać ten problem, CSS musiał sam sobie poradzić, ale potrzebny był CMS, aby z niego skorzystać, oddzielając projekt od treści.

Przepływy pracy i role były mieszane

Trudności w dokonywaniu globalnych zmian w treści i projekcie wokół funkcjonalnych, interaktywnych części witryny sprawiły, że publikowanie i utrzymywanie treści było bardzo powolnym i wymagającym procesem. Zespoły odpowiedzialne za treść, projektowanie front-endu i inżynierię back-endu również nie miały wyraźnych granic.

Dynamiczne, oparte na bazie danych rozwiązanie CMS

System zarządzania treścią narodził się wokół tego pomysłu: zamiast tworzyć całkowicie nowe pliki HTML za każdym razem, gdy potrzebna była nowa strona internetowa, cała zawartość każdej strony byłaby przechowywana w relacyjnej bazie danych, takiej jak MySQL. CMS napisany w języku skryptowym po stronie serwera, takim jak PHP, byłby następnie używany do wysyłania zapytań i dołączania zmiennych fragmentów treści z bazy danych na dynamicznie generowanych stronach. Każde żądanie strony od odwiedzającego może spowodować wygenerowanie dla niego nowej, unikalnej wersji żądanej treści.

Ograniczenia dynamicznego CMS

WordPress używa szablonów projektowych napisanych w PHP zmieszanych z HTML do generowania ostatecznego dokumentu HTML, który jest udostępniany odwiedzającym przy każdym żądaniu strony. W porównaniu z łatwością publikowania stron dynamicznych za pomocą systemu CMS trudno uwierzyć, że publikowanie w sieci oparte na statycznych plikach jest cokolwiek przydatne — dopóki nie weźmie się pod uwagę bezpieczeństwa i wydajności na dużą skalę z bazą danych, która jest przeszukiwana przy prawie każdym ładowaniu strony i bez niej.

Headless jako podejście hybrydowe — najlepsze z obu światów

Headless to hybrydowe podejście do obsługi stron internetowych z zasobów w dużej mierze statycznych w ramach front-end. Ten front-end używa systemu CMS i bazy danych na zapleczu tylko do pobierania dynamicznych treści lub otrzymywania danych wprowadzanych przez użytkownika tylko wtedy, gdy jest to absolutnie konieczne. Dzięki temu strony mogą być renderowane „w locie” dla odwiedzających — i przechowywane w pamięci podręcznej, gdy nie trzeba ich często zmieniać.

Bezgłowy WordPress i inne bezgłowe systemy zarządzania treścią

Bezgłowy WordPress to sposób na wdrożenie WordPress z zapleczem oddzielonym od zwykłych funkcji frontonu. Żaden motyw nie jest używany. Zaplecze odpowiada tylko za:

  • Zarządzania bazami danych
  • Zarządzanie użytkownikami
  • Zarządzanie zawartością
  • Interakcja z usługami zewnętrznymi

Warstwa prezentacji front-end zazwyczaj składa się z React.js lub innego interfejsu front-end opartego na JavaScript i frameworku HTML/CSS. Treść jest gromadzona z zaplecza za pośrednictwem interfejsu API, takiego jak WP GraphQL (implementacja GraphQL w WordPress) lub rdzeń API REST WordPress.

Może również istnieć wiele interfejsów obsługujących różne kanały dla różnych urządzeń, z których mogą korzystać użytkownicy. Ponadto nie ma wymogu, aby interfejsy użytkownika korzystały z tego samego serwera co zaplecze. Oto infrastruktura, której potrzebujesz do wydajnego publikowania wielokanałowego. Omnichannel pozwala dostarczać unikalne treści aplikacjom mobilnym i wszelkiego rodzaju urządzeniom w Internecie Rzeczy.

Istnieje sporo popularnych statycznych generatorów stron typu open source do tworzenia bezgłowych stron internetowych, takich jak Hugo i Jekyll. Są to całkowicie płaskie systemy plików bez narzędzi do zarządzania bazą danych i treścią, które WordPress oferuje we wdrożeniach bezobsługowych lub tradycyjnych. Gatsby i Next.js mogą być również używane do generowania statycznych witryn, ale oferują również zaawansowane frameworki front-end, których można używać w bezobsługowych wdrożeniach WordPress. Należy jednak pamiętać, że prawdziwa siła bezgłowego WordPressa nie polega na tym, że wykorzystuje on bazę danych w znacznie mniejszym stopniu, ale na tym, że optymalizuje wykorzystanie bazy danych pod kątem znacznie większej liczby możliwości niż tradycyjny interfejs CMS z jednym motywem i jednym celem. Dzięki bezgłowemu WordPressowi możesz zbudować wiele interfejsów użytkownika lub obsługiwać progresywną aplikację internetową (PWA) lub natywną aplikację mobilną.

Dlaczego bezgłowy WordPress to najlepszy bezgłowy CMS

WordPress jest tak potężną i szeroko stosowaną platformą, że ma wyjątkową pozycję, by odnieść sukces jako bezgłowy CMS.

Oto pięć powodów, dla których WordPress może być najlepszym wyborem dla Twojego bezgłowego CMS.

1. Ty już używasz WordPressa i wszyscy inni też

Możliwe, że już używasz WordPressa, więc odcięcie mu głowy to prosty krok naprzód.

Ponieważ WordPress jest niezależny od front-endu, istniejące witryny z bazami danych pełnymi treści mogą dość bezboleśnie przejść bez głowy. Lub bezgłowa witryna WordPress może mieć ponownie połączoną z nią „głowę”. Poruszanie się w dowolnym kierunku nie jest trudne dzięki WordPress.

Wielu Twoich pracowników i przyszłych pracowników ma lub będzie miało doświadczenie z WordPressem. Możesz liczyć na łatwiejsze wdrażanie dzięki znajomej technologii.

2. Twoi programiści front-end nie muszą dotykać WordPressa ani PHP

Ponieważ PHP jest uważane za język aplikacji zaplecza, zwykle nie jest kluczową częścią nowoczesnego szkolenia w zakresie programowania front-end. Platforma WordPress jest jednak zakodowana w PHP. Tradycyjne (bezgłowe) tworzenie front-endu dla WordPress koncentruje się na tworzeniu niestandardowych motywów, które wykorzystują funkcje API WordPress i kod, który będzie znany programistom PHP, ale nie innym. Podczas gdy WordPress szybko ewoluuje, a nowe motywy, które są kompatybilne z jego edytorem stron, mogą wykorzystywać PHP w niewielkim stopniu lub wcale, WordPress ma jeszcze długą drogę do przebycia, zanim PHP całkowicie wycofa się do zaplecza. Obecnie istnieje świetne rozwiązanie, dzięki któremu możesz mniej opierać się na PHP lub całkowicie go ominąć na rzecz nowoczesnych frameworków front-endowych. Tym rozwiązaniem jest bezgłowy WordPress.

Jeśli zatrudniasz programistów front-end do pracy nad standardowym (bezgłowym) projektem WordPress, może się okazać, że masz mniejszą pulę siły roboczej, z której możesz czerpać. Programista, który nie jest ugruntowany w PHP lub podobnym języku skryptowym po stronie serwera, może uznać, że jego krzywa uczenia się WordPress jest wysoka. Ale jeśli przodują w programowaniu front-end ze złożonymi frameworkami CSS i JavaScript, takimi jak React, jest to idealne rozwiązanie dla bezgłowej witryny WordPress. Dlaczego nie wykorzystać ich mocnych stron? W innym scenariuszu, jeśli nie używasz jeszcze WordPressa lub podobnego systemu CMS, ale masz doświadczonych programistów front-end, możesz nie chcieć, aby uczyli się, jak pracować z całkowicie nowym systemem CMS. To wtedy bezgłowy WordPress może być świetnym rozwiązaniem.

Deweloperzy nie muszą znać WordPressa, aby zbudować front-end dla bezgłowej witryny WordPress. Możesz zatrudnić prawie każdego zdolnego programistę front-end. Możesz wydać trochę lub dużo, ale uzyskać całkowicie niestandardowy interfejs. Całkowicie unikalny, dostosowany do potrzeb projekt strony prawie zawsze będzie Ci najlepiej służył, jeśli masz bardzo wyjątkowe potrzeby.

3. Hosty klasy korporacyjnej obsługują bezgłowy WordPress

Prawie każda platforma hostingowa oferuje hosting WordPress. Mogą mieć ponad dziesięcioletnie doświadczenie we wspieraniu tego. Zarządzane hosty WordPress obsługują korporacyjne witryny WordPress, a wiele głównych zarządzanych hostów WordPress oferuje wyspecjalizowany bezobsługowy hosting, narzędzia i wsparcie. Sprawiają, że bezpieczeństwo i wydajność Twojej witryny są dla nich priorytetem.

4. Bezgłowy WordPress jest szybki

Każdy CMS publikuje wolniejsze czasy ładowania dla odwiedzających w porównaniu do strony statycznej. Dynamiczne generowanie stron wymaga więcej zasobów serwera, a rozbudowany system CMS może generować duże obciążenie serwera. Nawet bardzo wydajna witryna WordPress z solidnym hostingiem i wydajnym buforowaniem zostanie spowolniona przez duże obciążenie ruchu i wielu aktywnych zalogowanych użytkowników z przodu lub z tyłu. Bezgłowe witryny WordPress nadal czerpią korzyści z CMS, ale działają bardziej jak statyczne generatory witryn z bazą danych. Odwiedzający otrzymują głównie szybko ładujące się pliki statyczne, gdy odwiedzają witrynę bez nagłówka.

Witryna, której ładowanie trwa zbyt długo, jest jednym z największych problemów właścicieli witryn. Przy wykładniczym wzroście przeglądania stron mobilnych szybkość jest ważniejsza niż kiedykolwiek. W witrynach e-commerce powolne ładowanie oznacza utratę sprzedaży. Typowy użytkownik nie będzie siedział i czekał na załadowanie witryny dłużej niż kilka sekund. Jeśli nie załaduje się natychmiast, przejdą do następnej rzeczy.

Skrócenie czasu ładowania witryny jest kluczowe. Co więcej, Google bierze pod uwagę szybkość ładowania strony podczas ustalania pozycji witryn w wynikach wyszukiwania. Jeśli SEO jest dla Ciebie dużym priorytetem, mądrze może być rozważenie innego interfejsu dla WordPress.

5. Bezgłowy WordPress może zwiększyć bezpieczeństwo

Zwykła instalacja WordPressa pozostawia odsłonięty interfejs administratora zaplecza, a nie tylko ekrany logowania. Nawet użytkownicy niskiego poziomu niebędący administratorami mogą potencjalnie uzyskać dostęp do administratora zaplecza. Czasami hakerzy mogą to wykorzystać za pomocą podatnej wtyczki lub motywu. Bezgłowe witryny WordPress zazwyczaj w ogóle nie używają motywu, a skoncentrowane na treści witryny bezgłowe mogą ograniczać użytkowników do kilku zaufanych użytkowników. W tym scenariuszu proces logowania może zostać mocno zablokowany, a inne potencjalne cele hakerów mogą zostać zamknięte, ponieważ nie są potrzebne.

Możesz użyć potężnej wtyczki zabezpieczającej WordPress, takiej jak iThemes Security Pro, aby w pełni zabezpieczyć bezgłową witrynę WordPress. Jest równie przydatny w dowolnej witrynie WordPress do zabezpieczania zaplecza, ustawiania odpowiednich ról dostępu użytkowników i egzekwowania zasad bezpiecznego logowania.

Kiedy korzystanie z bezgłowego WordPressa jest złym pomysłem?

Chociaż bezgłowy WordPress jest niezwykle potężnym narzędziem, które warto mieć przy sobie, ma kilka wad.

To może być złożone

Tworzenie bezgłowego systemu CMS nie jest przeznaczone dla niedoświadczonych programistów, chyba że są oni przygotowani do znacznej nauki. W przeciwieństwie do WordPressa, który jest w 100% plug-and-play, bezgłowy CMS nie jest. Zaczynasz od prostej instalacji WordPressa, a następnie oddzielasz jej części, głównie front-end. Następnie musisz opracować własny interfejs użytkownika. Jeśli jest to nieznane terytorium, nastąpi znaczna krzywa uczenia się. W przeciwieństwie do zwykłych witryn WordPress, bezgłowy WordPress nie jest tak szeroko rozumiany ani tak dobrze udokumentowany. Opłaca się łączyć i śledzić pracę wykonywaną przez głównych bezgłowych ekspertów ds. hostingu i rozwoju WordPress.

Niektóre rzeczy nie będą działać

Nowsze funkcje edycji witryny w WordPress nie będą przydatne ani użyteczne w witrynie bezgłowej. Sprawienie, aby edytor bloków w edytorze postów Gutenberga działał dobrze z interfejsem bezgłowym, również stanowi pewne wyzwanie. Wiele wtyczek WordPress może nie działać dobrze lub wcale w środowisku bezgłowym. Gospodarze i programiści WordPress pracują nad ulepszeniem i obsługą bezgłowego rozwoju WordPress, więc jest to obszar, który zawsze się zmienia. Dokładnie zbadaj aktualny stan technologii Headless WordPress i odpowiednio zaplanuj swój projekt.

Konserwacja jest obowiązkowa

Utrzymanie własnego kodu front-endu może być czasochłonne. A ponieważ edytor postów Gutenberg działa na zapleczu WordPress, jeśli chcesz go używać z witryną bezgłową, musisz zsynchronizować jego style zaplecza z oddzieloną strukturą front-end, aby uzyskać prawdziwe wrażenia WYSIWYG. Ten front-endowy framework również będzie wymagał ciągłej konserwacji. Bezobsługowe wdrożenia wymagają starannego wcześniejszego planowania bieżącej konserwacji, która wykracza poza tradycyjną witrynę opartą na WordPress lub CMS.

Zdobądź dodatkową zawartość: Przewodnik po zabezpieczeniach WordPress
Kliknij tutaj

Pierwsze kroki z bezgłowym WordPressem

Zainstaluj WordPress i odetnij front-end!

Jak to zwykle bywa w przypadku WordPressa, niektóre wtyczki mogą ci w tym pomóc. Jedna jest trafnie nazwana wtyczką Headless CMS. Zainstaluj i aktywuj go jak każdą inną wtyczkę WordPress.

Następnie rozpocznij pracę nad interfejsem swojej witryny. Możesz zastosować kilka różnych podejść. Możesz zdecydować się na wybór już istniejącego front-endu lub frameworka, na którym możesz budować, na przykład Gatsby. Możesz też rozważyć zbudowanie progresywnej aplikacji internetowej.

Stos dżemu

Jeśli nie znasz Jamstack, jest to często używana platforma do tworzenia stron internetowych. Używanie go dobrze by ci służyło jako interfejs dla bezgłowego WordPressa lub dowolnego innego CMS.

Luźne połączenie jest jedną z największych zalet Jamstack. Jeśli kiedykolwiek przeszedłeś przez proces odłączania WordPressa, jest to funkcja, która okaże się bardzo przydatna.

Progresywne aplikacje internetowe (PWA)

PWA jest pod wieloma względami podobny do strony internetowej. Ale w przeciwieństwie do stron internetowych, PWA będzie wykorzystywać ogromną gamę bibliotek JavaScript, które zapewniają użytkownikom natywną obsługę mobilną

W tym celu musisz użyć frameworka, takiego jak React lub Vue, aby opracować aplikację.

Gatsby'ego

Czy chcesz przyspieszyć proces programowania, zachowując jednocześnie większość swobody, jaką zapewnia bezgłowy CMS?

Gatsby to dobry wybór i jest do niego wtyczka.

Czy bezgłowy WordPress jest dla Ciebie?

WordPress sam w sobie jest niesamowitym narzędziem. Ale są chwile, kiedy możesz potrzebować własnego interfejsu użytkownika za pomocą bezgłowego CMS.

W tym przewodniku poznałeś metody, powody i podejścia, które należy zastosować podczas konfigurowania bezgłowego WordPressa.

Jeśli zdecydowałeś, że przejście na tryb headless jest najlepszym sposobem na zaspokojenie potrzeb związanych z rozwojem witryny, teraz wiesz wystarczająco dużo, aby zacząć.