Typowe problemy
Typowe problemyPolylang działa nieprawidłowo

Polylang działa nieprawidłowo

Jeśli podczas korzystania z rozszerzenia Polylang zauważasz następujące problemy przy pobieraniu danych przez GraphQL z publicznego endpointu:

  • Polylang nie wykrywa prawidłowo bieżącego języka dla żądań GraphQL
  • Treść specyficzna dla danego języka nie jest filtrowana poprawnie
  • Otrzymujesz treść w złym języku lub nie otrzymujesz żadnej treści

...i wykonałeś w Gato GraphQL któreś z poniższych działań:

  • Zaktualizowałeś ścieżkę GraphQL Single Endpoint
  • Zaktualizowałeś podstawowy slug Custom Endpoints lub zapytań utrwalonych (Persisted Queries)
  • Wyłączyłeś dowolny endpoint (wyłączając odpowiedni moduł)

...to musisz zastosować tę samą modyfikację za pomocą hooka, aby uniknąć konfliktu.

Dlaczego to się dzieje

Istnieje konflikt czasowy między inicjalizacją Polylang a konfiguracją kontenera usług Gato GraphQL.

Polylang ustawia filtry pll_model i pll_context podczas swojego procesu inicjalizacji. Ponieważ Gato GraphQL nie jest jeszcze zainicjowany, nie może pobrać poprawnych ścieżek endpointów z bazy danych, aby określić, czy żądanie pochodzi z endpointu GraphQL i nadpisać model oraz kontekst poprawnymi wartościami (PLL_Admin_Model i PLL_Admin).

Obejście problemu

Gdy Polylang ustawia filtry pll_model i pll_context, Gato GraphQL przyjmuje domyślne ścieżki dla endpointów GraphQL.

Dlatego jeśli zmodyfikujesz ścieżkę dowolnego publicznego endpointu w ustawieniach wtyczki, musisz zastosować tę samą modyfikację za pomocą hooka.

Przeczytaj przewodnik Replikowanie aktualizacji ścieżki endpointu GraphQL za pomocą hooków, aby znaleźć rozwiązanie.