Tworzenie utrwalonego zapytania
Utrwalone zapytanie to połączenie API GraphQL i REST: jest to zwykłe zapytanie GraphQL, opublikowane na stronie i dostępne pod własnym adresem URL, podobnie jak endpoint REST.
Na przykład możemy udostępnić dane witryny za pomocą następujących utrwalonych zapytań:
/graphql-query/homepage-posts/graphql-query/user-widget/graphql-query/post-contenti wykonać je, przekazując ID posta:?post=1/graphql-query/post-content/esaby przetłumaczyć treść posta na język hiszpański- Inne

Wykonywanie utrwalonego zapytania
Po opublikowaniu utrwalonego zapytania możemy je wykonać za pomocą jego permalinku.
Utrwalone zapytanie można wykonać bezpośrednio w przeglądarce, ponieważ jest ono dostępne via GET, a my otrzymamy żądane dane w formacie JSON:

Wykonywanie utrwalonego zapytania w aplikacji
Postępuj zgodnie z instrukcjami w przewodniku Łączenie się z serwerem GraphQL z poziomu klienta.
Dostęp do wszystkich utrwalonych zapytań
Po kliknięciu "Persisted Queries" w menu wtyczki wyświetlana jest lista wszystkich utworzonych utrwalonych zapytań:

Tworzenie nowego utrwalonego zapytania
Kliknij przycisk "Add New GraphQL persisted query", aby otworzyć edytor WordPress:

Nadaj mu tytuł i upewnij się, że permalink jest właściwy, wprowadź zapytanie GraphQL, wybierz konfigurację schematu i dostosuj opcje. Gdy będzie gotowe, kliknij przycisk Opublikuj, a permalink staje się endpointem utrwalonego zapytania.
Link do endpointu (i do źródła) jest wyświetlany w bocznym panelu "Persisted Query Endpoint Overview":

Domyślnie endpoint utrwalonego zapytania ma ścieżkę /graphql-query/, a ta wartość jest konfigurowalna poprzez Ustawienia:

Edytor zapytań
Klient GraphiQL w edytorze służy do wprowadzania utrwalonego zapytania GraphQL:

Edytor jest wyposażony w dodatek Explorer, który umożliwia tworzenie zapytania poprzez klikanie pól w lewym panelu bocznym. Kliknięcie przycisku "Run" wykonuje zapytanie, aby wyświetlić podgląd odpowiedzi:

Konfiguracja schematu
Określenie, kto może uzyskać dostęp do pól żądanych w utrwalonym zapytaniu, jest zdefiniowane w konfiguracji schematu.
Dlatego musimy utworzyć konfigurację schematu, a następnie wybrać ją z listy rozwijanej (lub nie używać żadnej, albo użyć domyślnej):

Prywatne utrwalone zapytania
Ustawiając status utrwalonego zapytania jako prywatne, endpoint będzie dostępny tylko dla użytkownika administratora. Zapobiega to niezamierzonemu udostępnieniu naszych danych użytkownikom, którzy nie powinni mieć do nich dostępu.
Na przykład możemy tworzyć prywatne utrwalone zapytania, które pomagają zarządzać aplikacją, takie jak pobieranie danych do tworzenia raportów z naszymi metrykami.

Utrwalone zapytania chronione hasłem
Jeśli tworzymy utrwalone zapytanie dla konkretnego klienta, możemy przypisać do niego hasło, aby zapewnić dodatkowy poziom bezpieczeństwa, gwarantując że tylko ten klient będzie miał dostęp do endpointu.

Przy pierwszym dostępie do utrwalonego zapytania chronionego hasłem natrafiamy na ekran z prośbą o podanie hasła:

Po podaniu i zweryfikowaniu hasła dopiero wtedy użytkownik uzyska dostęp do żądanego endpointu.
Uczynienie utrwalonego zapytania dynamicznym za pomocą parametrów URL
Wartość każdej zmiennej można ustawić za pomocą parametru URL (z nazwą zmiennej) podczas wykonywania utrwalonego zapytania. Jeśli opcja "Do URL params override variables?" jest włączona, parametr URL będzie miał pierwszeństwo. W przeciwnym razie pierwszeństwo będzie miała wartość zdefiniowana w słowniku zmiennych (jeśli istnieje).
Na przykład w tym zapytaniu liczba wyników jest kontrolowana przez zmienną $limit, z domyślną wartością 3:

Podczas wykonywania tego utrwalonego zapytania, przekazanie ?limit=5 spowoduje wykonanie zapytania zwracającego 5 wyników:

Tworzenie hierarchii utrwalonych zapytań
Przeczytaj instrukcje dotyczące tworzenia hierarchii API.
Wyłączanie utrwalonego zapytania
W opcjach ustaw "Enabled" na false, aby wyłączyć utrwalone zapytanie.
Ta funkcja może być przydatna, gdy utrwalone zapytanie jest częścią hierarchii API, aby zapewnić wspólne zachowanie jego podrzędnym utrwalonym zapytaniom, bez konieczności jego samodzielnego wykonywania.
Opisywanie utrwalonego zapytania
Użyj pola "Excerpt" w panelu ustawień dokumentu, aby nadać opis utrwalonemu zapytaniu.
Więcej informacji znajdziesz w przewodniku Dodawanie opisu do API.
Testowanie utrwalonego zapytania przed opublikowaniem online
Utrwalone zapytanie ze statusem szkic lub oczekujące jest dostępne tylko dla użytkowników edytujących schemat.
Możemy więc utworzyć utrwalone zapytanie, przypisać mu Konfigurację Schematu, opublikować je jako szkic lub oczekujące i przetestować (np.: sprawdzając, czy jego reguły Kontroli Dostępu są odpowiednie).
Po zatwierdzeniu dopiero wtedy ustawiamy jego status jako opublikowane, udostępniając utrwalone zapytanie wszystkim.
Wyświetlanie źródła
Dodając ?view=source do endpointu, zostanie wyświetlona konfiguracja utrwalonego zapytania (o ile użytkownik jest zalogowany i jego rola ma do tego dostęp):

Konfiguracja w edytorze WordPress
Oto pola w treści edytora:
| Pole | Opis |
|---|---|
| Tytuł | Tytuł utrwalonego zapytania |
| Klient GraphiQL | Edytor do pisania i wykonywania zapytania GraphQL:
GraphiQL Explorer jest włączony) umożliwia klikanie pól, które są automatycznie dodawane do zapytania |
| Konfiguracja schematu | Z listy rozwijanej wybierz konfigurację schematu mającą zastosowanie do utrwalonego zapytania lub jedną z tych opcji:
|
| Opcje | Dostosuj zachowanie utrwalonego zapytania:
|
Oto pola w ustawieniach dokumentu:
| Pole | Opis |
|---|---|
| Permalink | Endpoint, pod którym będzie dostępne utrwalone zapytanie |
| Kategorie | Umożliwia kategoryzowanie utrwalonego zapytania. Np.: mobile, app, itp. |
| Excerpt | Podaj opis utrwalonego zapytania. To pole jest dostępne, gdy moduł Excerpt as Description jest włączony |
| Atrybuty strony | Wybierz nadrzędne utrwalone zapytanie. To pole jest dostępne, gdy moduł API Hierarchy jest włączony |