Queries over plugin-dataMeta Box
Meta Box
Voorbeelden van queries om te werken met gegevens van de Meta Box plugin.
Meta Box aangepaste velden ophalen
Je kunt meta-velden gebruiken om aangepaste velden van Meta Box op te vragen, ongeacht het type:
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")
}
}Als de meta-waarde een relatie is (bijv. een post, een gebruiker, een taxonomie, enz.), kun je de waarde gebruiken om de bijbehorende entiteit van het type Post, User, Taxonomy, enz. op te vragen:
query GetPostWithRelationships($postId: ID!) {
post(by: { id: $postId }) {
id
title
# Exporteer de relatie naar een post
relationshipPostId: metaValue(key: "relationship_post_id")
@export(as: "relationshipPostId")
# Exporteer de relatie naar een lijst van posts
relationshipPostIds: metaValues(key: "relationship_post_ids")
@export(as: "relationshipPostIds")
}
}
query QueryPostRelationships @depends(on: "GetPostWithRelationships") {
# Query de relatie naar een post
relationshipPost: post(by: { id: $relationshipPostId }) {
id
title
}
# Query de relatie naar een lijst van posts
relationshipPosts: posts(filter: { ids: $relationshipPostIds }) {
id
title
}
}Meta Box aangepaste velden bijwerken
Je kunt meta-mutaties gebruiken om aangepaste velden van Meta Box bij te werken door hun veldnamen en waarden mee te geven, ongeacht het type:
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