Kiedy REST API zostało w końcu dodane do rdzenia WordPress, był to koniec długiej podróży. Wielu oczekiwało tej zmiany jako największego kroku naprzód dla WordPress w historii platformy. Jednakże, jeśli nie jesteś zaznajomiony z REST API, możesz być zdezorientowany, co to wszystko oznacza.
W skrócie, dodanie WordPress REST API przekształciło WordPressa w w pełni funkcjonalny framework aplikacyjny. To znacząco zwiększyło jego „rozszerzalność”, czyli zdolność do rozszerzania o nowe funkcje i możliwości. Ponadto rozszerzyło potencjał platformy do komunikacji z innymi stronami i aplikacjami.
Wprowadzenie do REST API
Zanim zagłębimy się w WordPress REST API, ważne jest, abyśmy wyjaśnili naszą terminologię. Jest to temat, w którym będziemy musieli użyć wielu skrótów, więc wyjaśnijmy je na początku.
Przede wszystkim musisz wiedzieć, czym są Application Programming Interfaces (APIs). W najprostszych terminach, API to środek, dzięki któremu jeden system umożliwia innym systemom dostęp do swoich danych.
Na przykład, gdy strona internetowa dodaje przycisk polubienia Facebooka na swojej stronie, robi to poprzez połączenie z API Facebooka. Pozwala to stronie internetowej używać API do odbierania danych (kod przycisku polubienia) i wysyłania danych (żądanie polubienia).
Więc, czym dokładnie jest REST API? Representational State Transfer (REST) to typ API specyficzny dla usług internetowych. Zawiera on standardowy zestaw instrukcji i zasad, co ułatwia wszystkim usługom ‘RESTful’ wzajemne połączenie.
W skrócie, REST APIs umożliwiają wysyłanie żądań do zewnętrznego systemu. Przykładem może być Twitter. Możesz użyć jego API, aby zażądać określonej liczby tweetów od konkretnego użytkownika. API następnie zwróci tweety zgodnie z twoim żądaniem, które możesz osadzić na swojej stronie za pomocą HTML i CSS.
Te żądania są realizowane za pomocą JavaScript Object Notation (JSON). Jest to język specjalnie zaprojektowany do wysyłania, odbierania i przechowywania danych.
Zajmiemy się JSON później w tym artykule, ale zalecamy poświęcić trochę czasu, aby zapoznać się z tym językiem z góry. Pomoże to przygotować się do korzystania z WordPress REST API oraz zrozumienia niektórych koncepcji, o których będziemy rozmawiać.
Co to jest WordPress REST API (i dlaczego jest ważne)
WordPress REST API działa w dużej mierze tak samo, jak przykłady, które już omówiliśmy. Zasadniczo, WordPress REST API daje ci pełny dostęp do funkcji WordPressa z dowolnego frameworka kompatybilnego z JSON.
Podobnie jak API Twittera umożliwia pobieranie i wysyłanie tweetów, WordPress REST API może być używane do zarządzania postami, użytkownikami, kategoriami i wieloma innymi elementami z zewnętrznych platform. Pozwala to na wykorzystanie WordPressa w wielu dotąd nieosiągalnych sposóbach.
API REST zostało ogłoszone już w 2013 roku. Początkowo było dodatkiem, który miał zostać włączony do rdzenia WordPressa w wersji 4.1. Jak to często bywa, opóźnienia przesunęły datę wydania aż do ostatecznego wdrożenia do rdzenia z wydaniem WordPress 4.7 trzy lata później.
To była długa, ale warta czekania chwila dla wielu osób, które uważały WordPress REST API za ważny krok naprzód dla platformy. Możesz się zastanawiać, dlaczego to dodanie było tak ważne, szczególnie że wielu użytkowników prawdopodobnie nie zauważyło dużego znaczenia. Jak się okazuje, włączenie REST API było fundamentalną zmianą dla WordPressa z wielu powodów.
Wprowadzając REST API, WordPress przeszedł od bycia tylko platformą do tworzenia stron internetowych do pełnoprawnego frameworku aplikacyjnego. Oznacza to, że deweloperzy mogą wykorzystać stronę WordPress do tworzenia aplikacji na urządzenia mobilne i sieciowe lub jako repozytorium informacji.
Ta zmiana umożliwiła również WordPressowi oddalenie się od zależności od PHP. Dzięki sprawieniu, że WordPress jest kompatybilny z dowolnym językiem kompatybilnym z JSON, REST API znacznie rozszerzyło możliwości dla programistów, umożliwiając im korzystanie z funkcjonalności WordPressa z praktycznie dowolnym frameworkiem.
Ostatecznie, REST API zapewnia większą elastyczność interfejsów, z których można korzystać przy pracy z platformą. Sprawiło to, że interfejs administracyjny stał się całkowicie opcjonalny, ponieważ teraz można w pełni oddziaływać na swoją stronę WordPress za pomocą poleceń JSON.
Teraz przyjrzyjmy się, jak JSON i REST API współpracują, aby to umożliwić.
Jak REST API i JSON działają razem
Do tej pory powinieneś mieć pojęcie o teoretycznych aspektach WordPress REST API. Więc, przyjrzyjmy się bardziej praktycznej stronie tej technologii. Oficjalny podręcznik opisuje korzystanie z REST API w następujący sposób:
„API REST WordPress zapewnia punkty końcowe API dla typów danych WordPress, które pozwalają programistom na zdalną interakcję z witrynami, poprzez wysyłanie i odbieranie obiektów JSON (JavaScript Object Notation).”
Pierwszym słowem, na którym musimy się skupić, jest „endpoints”. Najprostszym sposobem na zrozumienie, czym jest endpoint, jest potraktowanie go jako fragmentu danych lub funkcji, które można wywołać za pomocą żądania JSON. Domyślnie WordPress oferuje ogromną liczbę standardowych endpointów do wykorzystania, ale programiści mogą również tworzyć niestandardowe endpointy.
Aby dotrzeć do punktu końcowego, musisz użyć ‘trasy’, która przyjmuje formę normalnego URL. Możesz nawet spróbować tego teraz samodzielnie.
Przejdź do swojej własnej strony WordPress i dodaj /wp-json/wp/v2 na końcu jej adresu URL. Jeśli Twoja strona to http://example.com, wprowadź http://example.com/wp-json/wp/v2.
Kiedy załadujesz tę trasę, dotrzesz do punktu końcowego, który w tym przypadku zwraca całą zawartość i metadane dla Twojej strony w (nieuporządkowanym) formacie JSON. Korzystając z różnych tras, możesz uzyskać dostęp do różnych punktów końcowych, aby uzyskać konkretne typy informacji i wykonywać różne zadania.
Istnieją trzy główne żądania JSON, których będziesz używać z REST API, więc rzućmy na nie teraz szybkie spojrzenie. Są to:
- GET. Ten typ żądania jest używany do pobierania i listowania danych z API. Na przykład, użyłbyś żądania GET, aby zwrócić listę użytkowników na Twojej stronie lub skompilować posty na blogu z określonego okresu czasu.
- POST. To żądanie jest używane do wysyłania danych do API. Pozwala na wprowadzanie nowych informacji do WordPressa, takich jak dodawanie nowych użytkowników i postów lub aktualizacja istniejących danych.
- DELETE. Jak sugeruje nazwa, to żądanie służy do usuwania danych. Pozwala to na usunięcie postów, stron, użytkowników i więcej.
GET i POST mogą czasami być używane z tym samym punktem końcowym do osiągnięcia różnych rezultatów.
Na przykład, spójrzmy na punkt końcowy /me/settings/. Jeśli wykonałbyś żądanie GET na tym punkcie końcowym, otrzymałbyś listę aktualnych ustawień danego użytkownika. Jednakże, używając żądania POST na tym samym punkcie końcowym, mógłbyś zaktualizować ustawienia.
Rozpoczynanie pracy z WordPress REST API
Teraz zastosujemy całą tę teorię w praktyce i pokażemy kilka bardzo podstawowych przykładów tego, co można zrobić z REST API. To tylko przedsmak, który pomoże Ci poczuć się komfortowo przy użyciu REST API do przetwarzania żądań do WordPressa.
Aby zobaczyć więcej przykładów, zalecamy sprawdzenie oficjalnej biblioteki referencyjnej oraz zasobów REST API.
Następujące techniki wymagają od Ciebie używania linii poleceń do przetwarzania żądań JSON. Umożliwia to interakcję z Twoją stroną WordPress za pomocą interfejsu opartego na tekście i wysyłania prostych poleceń.
Jeśli nie masz doświadczenia w używaniu wiersza poleceń, zalecamy poświęcenie trochę czasu, aby najpierw nauczyć się podstaw. Możesz również chcieć użyć SSH, aby stworzyć połączenie ze swoją stroną.
Na koniec, gdy będziesz gotowy, przyjrzyjmy się kilku przykładom, jak możesz używać WordPress REST API!
1. Zwróć Posty z Strony
Chociaż oczywiście potrzebujesz odpowiednich uprawnień do edycji strony internetowej, można uzyskać pewne informacje z prawie każdej strony WordPress. Wynika to z tego, że REST API jest spójne we wszystkich instalacjach WordPress.
Jak omówiliśmy, głównym powodem istnienia API jest umożliwienie zewnętrznym aplikacjom dostępu do części Twoich danych. W tym przykładzie możemy pobrać pojedynczy post z oficjalnego bloga informacyjnego WordPress:
curl https://wordpress.org/news/wp-json/wp/v2/posts/1
ID zostało ustawione na 1, co oznacza, że to zapytanie pobierze pierwszy post na blogu. Może być trudno to zauważyć, ponieważ JSON nie jest bardzo czytelny, ale wśród kodu można znaleźć całą treść i meta-dane dla posta:
Możesz następnie użyć tych informacji w aplikacji, na przykład, aby wyświetlić je, używając własnego spersonalizowanego stylu.
Jeśli chcesz zwrócić wszystkie posty z bloga, wystarczy usunąć ID na końcu. Jednak prawdopodobnie będziesz chciał zwrócić wybraną liczbę postów. Następujące żądanie zwróci trzy najnowsze posty:
curl https://wordpress.org/news/wp-json/wp/v2/posts/?per_page=3
Możesz to wypróbować samodzielnie na innych stronach, a nawet na swoim własnym blogu.
2. Aktualizuj post
Teraz spróbujmy wprowadzić kilka zmian w WordPress za pomocą REST API. Aby to zrobić, musisz być zalogowany na stronie, którą chcesz zarządzać. Na przykład, jeśli używasz SSH, musisz zalogować się na swój serwer.
W tym przykładzie zaktualizujemy istniejący post. Najpierw użyjemy żądania, aby zaktualizować tytuł posta o ID 1:
curl -X POST http://example.com/wp-json/wp/v2/posts/1 -d '{"title":"Nowy Tytuł"}'
To jest dość samoobjaśniające. Argument tytułu pokazuje, że aktualizujesz tytuł posta, który jest następnie poprzedzony ciągiem tekstowym zawierającym zastępstwo.
Istnieje wiele innych argumentów, które można wykorzystać do wprowadzenia zmian w poście. Na przykład możesz użyć listy, aby przypisać kategorie do posta, opublikować go lub całkowicie zmienić jego zawartość.
3. Usuń Użytkownika
Wreszcie, przyjrzyjmy się, jak można usunąć dane za pomocą REST API. W tym przykładzie usuniemy użytkownika z witryny. Oczywiście, musisz być zalogowany i upoważniony do zarządzania użytkownikami, zanim będziesz mógł użyć tej funkcji.
Następnie możesz użyć poniższego żądania, aby usunąć użytkownika o identyfikatorze 101:
curl -X DELETE http://example.com/wp-json/wp/v2/users/101
To usunie określonego użytkownika z witryny. Możesz użyć dodatkowych parametrów, aby przypisać posty użytkownika do innego użytkownika na podstawie jego ID. Alternatywnie, możesz wymusić trwałe usunięcie zamiast dodawania użytkownika do kosza.
Za pomocą tych przykładów możesz zobaczyć, jak REST API umożliwia zarządzanie treścią na Twojej stronie i łączenie się z innymi. Jeśli chcesz dowiedzieć się więcej, polecamy zagłębić się w Podręcznik REST API.
Poznaj rozwój WordPress
WordPress REST API było ogromnym krokiem naprzód dla platformy, z dala od jej korzeni i w stronę przyszłości. Deweloperzy byli podekscytowani od pierwszego dnia, ale jeśli nie byłeś zaznajomiony z REST API od początku, mogłeś być zdezorientowany, dlaczego tak się stało.
Chociaż REST API może wydawać się przytłaczające dla początkujących, nie musisz być doświadczonym programistą, aby używać niektórych podstawowych żądań. Na przykład, API umożliwia wykonywanie różnorodnych zadań na własnej stronie (lub innych), takich jak zwracanie postów, aktualizowanie postów i usuwanie użytkowników.
Szukasz wydajnego hostingu dla swojej strony WordPress? W Dreamhost, nasze zarządzane plany DreamPress oferują profesjonalne środowiska stagingowe, automatyczne kopie zapasowe, wbudowaną pamięć podręczną i więcej. Sprawdź nasze plany już dziś!
Zrób więcej z DreamPress
Automatyczne aktualizacje, pamięć podręczna i silne zabezpieczenia DreamPress zwalniają Cię z zarządzania WordPress, pozwalając skupić się na swojej stronie.
Sprawdź Plany