Benutzerdefinierte Tags
Wir können Posts in WordPress Tags hinzufügen (also mithilfe der Taxonomie mit dem Namen "post_tag"). Dies ist bereits im GraphQL-Schema über den Typ PostTag abgebildet, der einem Post-Eintrag zugeordnet ist.
Ebenso kann ein benutzerdefinierter Post-Typ, der von einem Theme oder Plugin definiert wird (z. B. "product"), eine eigene Tag-Taxonomie haben, die ihm zugeordnet ist (z. B. "product-cat"). Da diese benutzerdefinierten Post-Typen nicht im GraphQL-Schema abgebildet sind, werden sie über den Typ GenericCustomPost aufgelöst, und ihre Tags werden als GenericTag aufgelöst.
Wir verwenden die Felder tag und tags, um Tag-Daten abzurufen, die über das Feldargument taxonomy angeben, auf welche Taxonomie sie sich beziehen. Das Ergebnis ist vom Union-Typ TagUnion, der Einträge von entweder PostTag oder GenericTag enthält (je nach Taxonomie des Eintrags).
Diese query ruft beispielsweise Tags mit der Taxonomie "product-tag" ab:
query {
tags(taxonomy: "product-tag") {
__typename
...on Tag {
count
description
id
name
slug
url
}
...on GenericTag {
taxonomy
customPostCount
customPosts {
__typename
...on CustomPost {
id
title
}
}
}
}
}Zugriff auf nicht abgebildete Tag-Taxonomien erlauben
Die Tag-Taxonomien, die über den Typ GenericTag zugänglich sind, müssen explizit auf der Einstellungsseite des Plugins konfiguriert werden, wie in der Anleitung Eine benutzerdefinierte Tag-Taxonomie zum Schema hinzufügen erklärt.