Travailler avec
Travailler avecÉtiquettes personnalisées

Étiquettes personnalisées

Nous pouvons ajouter des étiquettes aux publications dans WordPress (c'est-à-dire en utilisant la taxonomie avec le nom "post_tag"). Cela est déjà mappé dans le schéma GraphQL via le type PostTag, associé à une entrée Post.

De même, un type de publication personnalisé, défini par un thème ou un plugin (comme "product"), peut avoir sa propre taxonomie d'étiquette associée (comme "product-cat"). Comme ces types de publication personnalisés ne sont pas mappés dans le schéma GraphQL, ils sont résolus via le type GenericCustomPost, et leurs étiquettes sont résolues en tant que GenericTag.

Nous utilisons les champs tag et tags pour récupérer les données des étiquettes, qui indiquent à quelle taxonomie ils font référence via l'argument de champ taxonomy. Le résultat est du type union TagUnion, qui inclut des entrées de PostTag ou de GenericTag (selon la taxonomie de l'entrée).

Par exemple, cette requête récupère des étiquettes avec la taxonomie "product-tag" :

query {
  tags(taxonomy: "product-tag") {
    __typename
 
    ...on Tag {
      count
      description
      id
      name
      slug
      url
    }
    
    ...on GenericTag {
      taxonomy   
      customPostCount
      customPosts {
        __typename
        ...on CustomPost {
          id
          title
        }
      }
    }
  }
}

Autoriser l'accès aux taxonomies d'étiquettes non mappées

Les taxonomies d'étiquettes accessibles via le type GenericTag doivent être explicitement configurées dans la page des réglages du plugin, comme expliqué dans le guide Ajouter une taxonomie d'étiquettes personnalisée au schéma.