⭐️ Lançada v3.0 com suporte ao WordPress 6.6 e bulk mutations
Gato GraphQL v3.0 foi lançada, contendo novas funcionalidades e algumas breaking changes. Confira as notas de lançamento no GitHub para a lista completa de alterações.
Abaixo estão as atualizações mais importantes.
Adicionada compatibilidade com WordPress 6.6
Gato GraphQL 3.0 recompilou todos os seus blocos para torná-los compatíveis com WordPress 6.6. (Para todas as versões anteriores, os blocos gerarão um erro JS.)
Adicionados campos de bulk mutation (para todas as mutations do schema)
Gato GraphQL 3.0 adiciona campos de bulk mutation para todas as mutations do schema, permitindo-nos mutar múltiplos recursos.
Por exemplo, a mutation createPosts (a mutation de recurso único é createPost) criará múltiplos posts:
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
}
}
}As bulk mutations abrem possibilidades para gerenciar nosso site WordPress. Por exemplo, a seguinte query GraphQL usa createPosts (e Multiple Query Execution, fornecido pelo Gato GraphQL PRO) para duplicar posts:
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
}
}
}A lista dos campos de bulk mutation adicionados é a seguinte:
Root.addCommentToCustomPostsRoot.createCustomPostsRoot.createMediaItemsRoot.createPagesRoot.createPostsRoot.removeFeaturedImageFromCustomPostsRoot.replyCommentsRoot.setCategoriesOnPostsRoot.setFeaturedImageOnCustomPostsRoot.setTagsOnPostsRoot.updateCustomPostsRoot.updatePagesRoot.updatePostsComment.replyWithCommentsCustomPost.addComments
Breaking change: Requer no mínimo WordPress v6.0
Para suportar WordPress v6.6, os blocos do plugin precisaram ser recompilados tendo como alvo o WordPress v6.0+.
Portanto, a partir da v3.0, Gato GraphQL requer no mínimo WordPress v6.0.
Breaking change: O bloco de configuração do schema "Payload Types for Mutations" pode precisar ser reconfigurado
Ao bloco de configuração do schema "Payload Types for Mutations" foi adicionado um novo valor de opção: "Do not use payload types for mutations (i.e. return the mutated entity)". Por esse motivo, sua estrutura de dados interna foi alterada.
Se você criou uma configuração de schema com a opção "Do not use payload types for mutations (i.e. return the mutated entity)" selecionada, após a atualização para v3.0 esse valor de seleção será perdido. Você precisa editar a configuração do schema, selecionar essa opção novamente e salvar.