Consultar dados do WordPress
Consultar dados do WordPressCategorias de Post

Categorias de Post

Estes são exemplos de queries para buscar dados de categorias de posts.

Buscando categorias

Lista de categorias de posts, ordenadas por nome e exibindo a contagem de posts:

query {
  postCategories(
    sort: { order: ASC, by: NAME }
    pagination: { limit: 50 }
  ) {
    id
    name
    url
    postCount
  }
}

Todas as categorias em um post:

query {
  post(by: { id: 1 }) {
    categories {
      id
      name
      url
    }
  }
}

Nomes das categorias nos posts:

query {
  posts {
    id
    title
    categoryNames
  }
}

Uma lista de categorias predefinidas:

query {
  postCategories(filter: { ids: [2, 5] }) {
    id
    name
    url
  }
}

Filtrando categorias por nome:

query {
  postCategories(filter: { search: "rr" }) {
    id
    name
    url
  }
}

Contando resultados de categorias:

query {
  postCategoryCount(filter: { search: "rr" })
}

Paginando categorias:

query {
  postCategories(
  	pagination: {
  	  limit: 3,
  	  offset: 3
  	}
  ) {
    id
    name
    url
  }
}

Somente categorias de primeiro nível e o 2º nível de filhas:

{
  postCategories(pagination: { limit: 50 }, filter: { parentID: 0 }) {
    ...CatProps
    children {
      ...CatProps
      children {
        ...CatProps
      }
    }
  }
}
 
fragment CatProps on PostCategory {
  id
  name
  parent {
    id
    name
  }
  childNames
  childCount
}

Buscando valores meta:

query {
  postCategories(
  	pagination: { limit: 5 }
  ) {
    id
    name
    metaValue(
      key: "someKey"
    )
  }
}

Definindo categorias em um post

Mutation:

mutation {
  setCategoriesOnPost(
    input: {
      id: 1499, 
      categoryIDs: [2, 5]
    }
  ) {
    status
    errors {
      __typename
      ... on ErrorPayload {
        message
      }
    }
    postID
    post {
      categories {
        id
      }
      categoryNames
    }
  }
}

Mutation aninhada:

mutation {
  post(by: { id: 1499 }) {
    setCategories(
      input: {
        categoryIDs: [2, 5]
      }
    ) {
      status
      errors {
        __typename
        ... on ErrorPayload {
          message
        }
      }
      postID
      post {
        categories {
          id
        }
        categoryNames
      }
    }
  }
}

Criando, atualizando e excluindo uma categoria de post

Esta query cria, atualiza e exclui termos de categorias de posts:

mutation CreateUpdateDeletePostCategories {
  createPostCategory(input: {
    name: "Some name"
    slug: "Some slug"
    description: "Some description"
  }) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
    category {
      ...PostCategoryData
    }
  }
 
  updatePostCategory(input: {
    id: 1
    name: "Some updated name"
    slug: "Some updated slug"
    description: "Some updated description"
  }) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
    category {
      ...PostCategoryData
    }
  }
 
  deletePostCategory(input: {
    id: 1
  }) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
  }
}
 
fragment PostCategoryData on PostCategory {
  id
  name
  slug
  description
  parent {
    id
  }
}