Praca z
Praca zKategorie niestandardowe

Kategorie niestandardowe

Możemy dodawać kategorie do postów w WordPress (tj. używając taksonomii o nazwie "category"). Jest to już odwzorowane w schemacie GraphQL za pomocą typu PostCategory, powiązanego z wpisem Post.

Podobnie, niestandardowy typ posta, zdefiniowany przez dowolny motyw lub plugin (np. "product"), może mieć własną taksonomię kategorii z nim powiązaną (np. "product-cat"). Ponieważ te niestandardowe typy postów nie są odwzorowane w schemacie GraphQL, są rozwiązywane za pomocą typu GenericCustomPost, a ich kategorie są rozwiązywane jako GenericCategory.

Używamy pól category i categories do pobierania danych kategorii, które wskazują, do której taksonomii się odnoszą, za pomocą argumentu pola taxonomy. Wynik jest typu unii CategoryUnion, który zawiera wpisy z PostCategory lub GenericCategory (w zależności od taksonomii wpisu).

Na przykład ta query pobiera kategorie z taksonomią "product-category":

query {
  categories(taxonomy: "product-category") {
    __typename
 
    ...on Category {
      count
      description
      id
      name
      slug
      url
    }
    
    ...on GenericCategory {
      taxonomy   
      customPostCount
      customPosts {
        __typename
        ...on CustomPost {
          id
          title
        }
      }
    }
  }
}

Zezwalanie na dostęp do nieodwzorowanych taksonomii kategorii

Taksonomie kategorii dostępne za pomocą typu GenericCategory muszą być jawnie skonfigurowane na stronie Ustawień pluginu, zgodnie z opisem w przewodniku Dodawanie niestandardowej taksonomii kategorii do schematu.