⭐️ Uitgebracht v3.0 met ondersteuning voor WordPress 6.6 en bulk mutations
Gato GraphQL v3.0 is uitgebracht, met nieuwe functies en een aantal breaking changes. Bekijk de release notes op GitHub voor de volledige lijst van wijzigingen.
Hieronder vind je de belangrijkste updates.
Compatibiliteit met WordPress 6.6 toegevoegd
Gato GraphQL 3.0 heeft alle blokken opnieuw gecompileerd, zodat ze compatibel zijn met WordPress 6.6. (Voor alle vorige versies zullen blokken een JS-fout geven.)
Bulk mutation-velden toegevoegd (voor alle mutations in het schema)
Gato GraphQL 3.0 voegt "bulk" mutation-velden toe voor alle mutations in het schema, waarmee je meerdere resources tegelijk kunt muteren.
Zo zal mutation createPosts (de mutation voor een enkel resource is createPost) meerdere berichten aanmaken:
mutation CreatePosts {
createPosts(inputs: [
{
title: "First post"
contentAs: {
html: "This is the content for the first post"
}
},
{
title: "Second post"
contentAs: {
html: "Here is another content, for another post"
}
excerpt: "The cup is within reach"
},
{
title: "Third post"
contentAs: {
html: "This is yet another piece of content"
},
authorBy: {
id: 1
},
status: draft
}
]) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
post {
id
title
content
excerpt
author {
name
}
status
}
}
}Bulk mutations openen nieuwe mogelijkheden voor het beheren van je WordPress-site. Zo gebruikt de volgende GraphQL-query createPosts (en Multiple Query Execution, geleverd door Gato GraphQL PRO) om berichten te dupliceren:
query ExportPostData
{
postsToDuplicate: posts {
rawTitle
rawContent
rawExcerpt
postInput: _echo(value: {
title: $__rawTitle
contentAs: {
html: $__rawContent
},
excerpt: $__rawExcerpt
})
@export(as: "postInputs", type: LIST)
@remove
}
}
mutation CreatePosts
@depends(on: "ExportPostData")
{
createPosts(inputs: $postInputs) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
post {
id
title
content
excerpt
}
}
}De lijst van toegevoegde bulk mutation-velden is als volgt:
Root.addCommentToCustomPostsRoot.createCustomPostsRoot.createMediaItemsRoot.createPagesRoot.createPostsRoot.removeFeaturedImageFromCustomPostsRoot.replyCommentsRoot.setCategoriesOnPostsRoot.setFeaturedImageOnCustomPostsRoot.setTagsOnPostsRoot.updateCustomPostsRoot.updatePagesRoot.updatePostsComment.replyWithCommentsCustomPost.addComments
Breaking change: Minimaal WordPress v6.0 vereist
Om WordPress v6.6 te ondersteunen moesten de blokken in de plugin opnieuw worden gecompileerd met WordPress v6.0+ als doelversie.
Daarom vereist Gato GraphQL vanaf v3.0 minimaal WordPress v6.0.
Breaking change: Schemaconfiguratieblok "Payload Types for Mutations" moet mogelijk opnieuw worden geconfigureerd
Aan het schemaconfiguratieblok "Payload Types for Mutations" is een nieuwe optiewaarde toegevoegd: "Do not use payload types for mutations (i.e. return the mutated entity)". Hierdoor is de interne datastructuur gewijzigd.
Als je een schemaconfiguratie hebt aangemaakt met de optie "Do not use payload types for mutations (i.e. return the mutated entity)" geselecteerd, gaat deze selectie na het upgraden naar v3.0 verloren. Je moet de schemaconfiguratie bewerken, deze optie opnieuw selecteren en opslaan.