Hilfsqueries erstellen
Wenn du mit Übersetzungen arbeitest, kannst du auf verschiedene Situationen stoßen, in denen du bestimmte Inhalte auf deiner Website identifizieren, analysieren oder verarbeiten musst. Zum Beispiel:
- Beiträge finden, die einen bestimmten Gutenberg-Block enthalten, der nicht übersetzt werden kann
- Beiträge mit beschädigten oder fehlerhaften Daten identifizieren
- Inhalte finden, die eine manuelle Überprüfung oder Migration erfordern
- Listen von Beiträgen, Seiten oder anderen Inhaltstypen für Batch-Operationen abrufen
Da Gato AI Translations for Polylang Gato GraphQL unter der Haube ausführt, kannst du dieses Tool bequem nutzen, um benutzerdefinierte GraphQL-Queries zu erstellen, mit denen du Informationen von deiner WordPress-Website suchen, filtern und abrufen kannst.
Den erweiterten Modus aktivieren
Um GraphQL-Queries auszuführen, musst du zuerst den Erweiterten Modus in den Plugin-Einstellungen aktivieren.
Gehe zu Einstellungen > Plugin-Konfiguration > Erweiterte Nutzung und wähle Erweiterten Modus aktivieren:

Sobald er aktiviert ist, wird der benutzerdefinierte Beitragstyp Queries in deinem WordPress-Adminmenü verfügbar:

Navigiere zu Queries in deinem WordPress-Adminmenü und füge einen neuen Eintrag hinzu. Gib ihm einen beschreibenden Titel, der klar angibt, was die Query tut.
Beispiele
Beiträge mit einem bestimmten Block finden
Ein häufiger Anwendungsfall ist das Identifizieren von Beiträgen, die einen bestimmten Gutenberg-Block enthalten, der nicht übersetzt werden kann. Diese Query hilft dir, alle Beiträge zu finden, die zu einem anderen, übersetzbaren Block migriert werden müssen.
Erstelle einen neuen Eintrag mit dem Titel Find posts containing a certain block und verwende diese Query:
query FindPostsContainingBlock(
$blockName: String!
) {
customPostCount(
filter: {
status: any,
search: $blockName
}
)
customPosts(
filter: {
status: any,
search: $blockName
},
pagination: { limit: -1 }
) {
id
title
customPostType
url
wpAdminEditURL
}
}Beachte, dass wir der Query Variablen übergeben können, sodass wir sie für verschiedene Blöcke wiederverwenden können.
Um zum Beispiel Beiträge zu finden, die den Yoast FAQ-Block enthalten, setze die GraphQL-Variablen auf:
{
"blockName": "yoast/faq-block"
}Dann führe die Query aus:

In der Antwort siehst du die Liste der Beiträge, die den Yoast FAQ-Block enthalten. Ein Klick auf eine beliebige url öffnet den Beitrag im Frontend, oder ein Klick auf einen beliebigen wpAdminEditURL-Link öffnet den Beitrag im WordPress-Editor.
{
"data": {
"customPostCount": 6,
"customPosts": [
{
"id": 38602,
"title": "BTS B",
"customPostType": "page",
"url": "https://www.mysite.com/bts-dietetique-b/",
"wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=38602&action=edit"
},
{
"id": 38024,
"title": "Merci",
"customPostType": "page",
"url": "https://www.mysite.com/merci/",
"wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=38024&action=edit"
},
{
"id": 38633,
"title": "BTS A",
"customPostType": "page",
"url": "https://www.mysite.com/bts-dietetique-a/",
"wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=38633&action=edit"
},
{
"id": 34871,
"title": "Collagène marin B",
"customPostType": "page",
"url": "https://www.mysite.com/meilleurs-collagenes-marin/",
"wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=34871&action=edit"
},
{
"id": 34853,
"title": "Collagène marin A",
"customPostType": "page",
"url": "https://www.mysite.com/meilleur-collagene-marin/",
"wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=34853&action=edit"
},
{
"id": 33987,
"title": "Meilleur collagène en 2025 : l’avis d’un médecin (15 marques)",
"customPostType": "page",
"url": "https://www.mysite.com/meilleur-collagene/",
"wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=33987&action=edit"
}
]
}
}Fehler durch beschädigte Daten beheben
Ein weiterer häufiger Anwendungsfall ist die Behebung von Fehlern durch beschädigte Daten.
Wenn zum Beispiel ein Medienelement einen nicht vorhandenen Elternverweis hat, kann das Plugin den Inhalt nicht übersetzen. Du kannst das beheben, indem du den Elternverweis entfernst.
Erstelle einen neuen Eintrag mit dem Titel Remove parent reference from media item und verwende diese Query:
mutation RemoveParentReferenceFromMediaItem($mediaItemID: ID!) {
updateMediaItem( input: { id: $mediaItemID, customPostID: null } ) {
status
errors {
__typename
...on GenericErrorPayload {
message
}
}
}
}Um zum Beispiel den Fehler durch beschädigte Daten für das Medienelement mit der ID 26066 zu beheben, setze die GraphQL-Variablen auf:
{
"mediaItemID": 26066
}Und führe die Query aus.