Consultar datos de WordPressCategorías personalizadas
Categorías personalizadas
Lee más en la guía Trabajar con categorías personalizadas.
Estos son ejemplos de consultas para obtener datos de taxonomías de categorías personalizadas.
Taxonomías no mapeadas al esquema
Recupera categorías con la taxonomía "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
}
}
}
}
}Recuperar categorías asociadas a una entrada personalizada
El tipo GenericCustomPost tiene el campo categories, para recuperar las categorías personalizadas añadidas a la entrada personalizada:
query {
customPosts(
filter: { customPostTypes: "product" }
) {
__typename
... on GenericCustomPost {
categories(taxonomy: "product-cat") {
__typename
id
name
taxonomy
}
}
}
}Filtrar entradas personalizadas por categoría
Para recuperar las entradas personalizadas con categorías dadas, podemos usar el input filter.categories:
query {
customPostsByCatIDs: customPosts(
filter: {
categories: {
includeBy: {
ids: [26, 28]
}
taxonomy: "product-cat"
}
}
) {
id
title
}
customPostsByCatSlugs: customPosts(
filter: {
categories: {
includeBy: {
slugs: ["news", "sports"]
}
taxonomy: "product-cat"
}
}
) {
id
title
}
}Establecer categorías en una entrada personalizada
Mutación:
mutation {
setCategoriesOnCustomPost(
input: {
id: 1499,
categoryIDs: [2, 5]
taxonomy: "cat-taxonomy"
}
) {
status
errors {
__typename
... on ErrorPayload {
message
}
}
customPostID
customPost {
categories(taxonomy: "cat-taxonomy") {
id
}
categoryNames(taxonomy: "cat-taxonomy")
}
}
}Mutación anidada:
mutation {
customPost(by: { id: 1499 }) {
setCategories(
input: {
categoryIDs: [2, 5]
taxonomy: "cat-taxonomy"
}
) {
status
errors {
__typename
... on ErrorPayload {
message
}
}
customPostID
customPost {
categories(taxonomy: "cat-taxonomy") {
id
}
categoryNames(taxonomy: "cat-taxonomy")
}
}
}
}Crear, actualizar y eliminar una categoría personalizada
Esta consulta crea, actualiza y elimina términos de categoría para una categoría personalizada some-cat-taxonomy:
mutation CreateUpdateDeleteCategories {
createCategory(input: {
taxonomy: "some-cat-taxonomy",
name: "Some name"
slug: "Some slug"
description: "Some description"
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
category {
...CategoryData
}
}
updateCategory(input: {
id: 1
taxonomy: "some-cat-taxonomy"
name: "Some updated name"
slug: "Some updated slug"
description: "Some updated description"
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
category {
...CategoryData
}
}
deleteCategory(input: {
id: 1
taxonomy: "some-cat-taxonomy"
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
}
}
fragment CategoryData on Category {
id
name
slug
description
parent {
id
}
}Next