Veelvoorkomende problemen
Veelvoorkomende problemenPolylang werkt niet goed

Polylang werkt niet goed

Als je bij het gebruik van de Polylang-extensie de volgende problemen opmerkt bij het ophalen van gegevens via GraphQL vanuit een publiek endpoint:

  • Polylang detecteert de huidige taal voor GraphQL-verzoeken niet correct
  • Taalspecifieke content wordt niet juist gefilterd
  • Je krijgt content in de verkeerde taal of helemaal geen content

...en je hebt een van de volgende acties uitgevoerd in Gato GraphQL:

  • Het pad van het GraphQL Single Endpoint bijgewerkt
  • De basisslug van Custom Endpoints of Persisted Queries bijgewerkt
  • Een endpoint uitgeschakeld (door de bijbehorende module uit te schakelen)

...dan moet je dezelfde wijziging via een hook toepassen om het conflict te voorkomen.

Waarom dit gebeurt

Er is een timing-conflict tussen de initialisatie van Polylang en de inrichting van de servicecontainer van Gato GraphQL.

Polylang stelt de filters pll_model en pll_context in tijdens het initialisatieproces. Omdat Gato GraphQL nog niet geïnitialiseerd is, kan het de juiste endpointpaden niet ophalen uit de database om te bepalen of het verzoek afkomstig is van een GraphQL-endpoint en het model en de context te overschrijven met de juiste waarden (PLL_Admin_Model respectievelijk PLL_Admin).

Tijdelijke oplossing

Wanneer Polylang de filters pll_model en pll_context instelt, gaat Gato GraphQL uit van de standaardpaden voor de GraphQL-endpoints.

Als je daarna het pad van een publiek endpoint wijzigt via de plugin-instellingen, moet je dezelfde wijziging via een hook toepassen.

Lees de gids GraphQL-endpointpadupdates repliceren via hooks voor de oplossing.