⭐️ Uitgave v2.6 met nieuwe MultilingualPress-extensie (voor meertalige sites)
Gato GraphQL v2.6 is uitgebracht met verschillende nieuwe functies. Bekijk de release-opmerkingen op GitHub voor de volledige lijst van wijzigingen.
Hieronder vind je de belangrijkste toevoegingen.
[PRO] Integratie met MultilingualPress toegevoegd
Gato GraphQL PRO heeft nu een integratie met de MultilingualPress-plugin.
Met de nieuwe MultilingualPress-extensie krijgt het GraphQL-schema de velden om meertalige data op te halen.
Je kunt nu bijvoorbeeld deze query uitvoeren:
query {
posts {
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
categories {
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
}
tags {
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
}
}
pages {
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
}
customPosts(filter: { customPostTypes: "some-cpt" }) {
__typename
...on GenericCustomPost {
multilingualpressIsTranslatable
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
categories(taxonomy: "some-category") {
__typename
...on GenericCategory {
multilingualpressIsTranslatable
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
}
}
tags(taxonomy: "some-tag") {
__typename
...on GenericTag {
multilingualpressIsTranslatable
multilingualpressTranslationConnections {
...MultilingualPressConnectionData
}
}
}
}
}
}
fragment MultilingualPressConnectionData {
siteID
entityID
}Met deze toevoeging kunnen we Gato GraphQL gebruiken om berichten automatisch te vertalen voor de MultilingualPress-plugin en die vertalingen op te slaan in de bijbehorende sites in het WordPress multisite-netwerk.
Bekijk de demovideo Automatically translating posts for MultilingualPress (on a WordPress multisite network) om te zien hoe het werkt:
[PRO] Veld _strRegexFindMatches toegevoegd
Het veld _strRegexFindMatches is toegevoegd aan het GraphQL-schema (onder de extensie PHP Functions via Schema).
Dit veld voert een reguliere expressie uit om alle overeenkomsten uit een string te extraheren. Als je bijvoorbeeld deze query uitvoert:
query {
_strRegexFindMatches(
regex: "/https?:\\/\\/([a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]\\.[a-zA-Z]{2,})/",
string: "In website https://gatographql.com there is more information"
)
}...wordt het volgende geproduceerd:
{
"data": {
"_strRegexFindMatches": [
[
"https:\/\/gatographql.com"
],
[
"gatographql.com"
]
]
}
}Met deze toevoeging kunnen we Gato GraphQL gebruiken om de lege strings uit een Poedit-bestand te extraheren, ze naar elke taal te vertalen en het bijbehorende Poedit-bestand voor die taal aan te maken.
Bekijk de demovideo Translating all strings in a Poedit file for any language om te zien hoe het werkt:
Veld siteURL toegevoegd
Het volgende veld is via de module "Site" aan het GraphQL-schema toegevoegd:
Root.siteURL
Als je bijvoorbeeld de volgende query uitvoert:
query {
siteURL
}...wordt het volgende geproduceerd:
{
"data": {
"siteURL": "https://mysite.com"
}
}Velden voor het ophalen van multisite-data toegevoegd
Het GraphQL-schema ondersteunt nu het ophalen van data uit een WordPress multisite-netwerk, beschikbaar gesteld via de nieuwe module "Multisite".
Deze module voegt de volgende velden toe aan het GraphQL-schema:
Root.networkSitesRoot.networkSiteCount
Het veld networkSites geeft een array terug met alle sites in het netwerk, elk van het nieuwe type NetworkSite, dat de volgende velden bevat:
idnameurllocalelanguage
Deze velden zijn alleen beschikbaar wanneer multisite is ingeschakeld (d.w.z. wanneer de methode is_multisite() true retourneert).
Als je bijvoorbeeld de volgende query uitvoert:
query {
networkSiteCount
networkSites {
id
name
url
locale
language
}
}kan dit het volgende opleveren:
{
"data": {
"networkSiteCount": 3,
"networkSites": [
{
"id": 1,
"name": "Site in English",
"url": "https://mymultisite.com",
"locale": "en_US",
"language": "en"
},
{
"id": 2,
"name": "Site in Spanish",
"url": "https://es.mymultisite.com",
"locale": "es_AR",
"language": "es"
},
{
"id": 3,
"name": "Site in French",
"url": "https://fr.mymultisite.com",
"locale": "fr_FR",
"language": "fr"
}
]
}
}Voorgedefinieerde persistente queries toegevoegd
De volgende persistente queries zijn toegevoegd aan Gato GraphQL:
- [PRO] Translate posts for MultilingualPress (Gutenberg)
- [PRO] Translate posts for MultilingualPress (Classic editor)
- [PRO] Translate Poedit file content
[PRO] Automatiseringsregels toegevoegd
De volgende automatiseringsregels zijn toegevoegd aan Gato GraphQL PRO:
- MultilingualPress: Vertaal bij het publiceren van een bericht naar alle talen (Gutenberg)
- MultilingualPress: Vertaal bij het publiceren van een bericht naar alle talen (Klassieke editor)