Consultar datos de pluginsMeta Box
Meta Box
Ejemplos de consultas para interactuar con datos del plugin Meta Box.
Obtener campos personalizados de Meta Box
Podemos usar Valores meta para consultar los datos de campos personalizados de Meta Box, sea cual sea su tipo:
query GetPost($postId: ID!) {
post(by: { id: $postId }) {
id
title
text: metaValue(key: "text_field")
textarea: metaValue(key: "textarea_field")
select: metaValue(key: "select_field")
multiSelect: metaValues(key: "multi_select_field")
}
}Si el valor meta es una relación (p. ej.: una entrada, un usuario, una taxonomía, etc.), podemos usar el valor para consultar la entidad correspondiente de tipo Post, User, Taxonomy, etc.:
query GetPostWithRelationships($postId: ID!) {
post(by: { id: $postId }) {
id
title
# Exportar la relación a una entrada
relationshipPostId: metaValue(key: "relationship_post_id")
@export(as: "relationshipPostId")
# Exportar la relación a una lista de entradas
relationshipPostIds: metaValues(key: "relationship_post_ids")
@export(as: "relationshipPostIds")
}
}
query QueryPostRelationships @depends(on: "GetPostWithRelationships") {
# Consultar la relación a una entrada
relationshipPost: post(by: { id: $relationshipPostId }) {
id
title
}
# Consultar la relación a una lista de entradas
relationshipPosts: posts(filter: { ids: $relationshipPostIds }) {
id
title
}
}Actualizar campos personalizados de Meta Box
Podemos usar Valores meta para actualizar los datos de campos personalizados de Meta Box, pasando sus nombres de campo y valores, sea cual sea su tipo:
mutation UpdatePost($postId: ID!) {
updatePost(
input: {
id: $postId
meta: {
text_field: ["New text value"],
textarea_field: ["New textarea value"],
select_field: ["New select value"],
multi_select_field: ["Choice 1", "Choice 2"],
}
}
) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
post {
id
text: metaValue(key: "text_field")
textarea: metaValue(key: "textarea_field")
select: metaValue(key: "select_field")
multiSelect: metaValues(key: "multi_select_field")
}
}
}Prev