Blog

⭐️ Lancé v3.0 avec support pour WordPress 6.6, et bulk mutations

Leonardo Losoviz
Par Leonardo Losoviz ·

Gato GraphQL v3.0 a été lancé, contenant de nouvelles fonctionnalités et quelques breaking changes. Consultez les notes de release sur GitHub pour la liste complète des changements.

Voici les mises à jour les plus importantes.

Compatibilité ajoutée avec WordPress 6.6

Gato GraphQL 3.0 a recompilé tous ses blocs, pour les rendre compatibles avec WordPress 6.6. (Pour toutes les versions précédentes, les blocs lèveront une erreur JS.)

Champs de bulk mutation ajoutés (pour toutes les mutations du schéma)

Gato GraphQL 3.0 ajoute des champs de bulk mutation pour toutes les mutations du schéma, nous permettant de muter plusieurs ressources.

Par exemple, la mutation createPosts (la mutation sur une seule ressource est createPost) créera plusieurs articles :

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
    }
  }
}

Les bulk mutations ouvrent des possibilités pour gérer notre site WordPress. Par exemple, la requête GraphQL suivante utilise createPosts (et Multiple Query Execution, fourni par Gato GraphQL PRO) pour dupliquer des articles :

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
    }
  }
}

La liste des champs de bulk mutation ajoutés est la suivante :

  • Root.addCommentToCustomPosts
  • Root.createCustomPosts
  • Root.createMediaItems
  • Root.createPages
  • Root.createPosts
  • Root.removeFeaturedImageFromCustomPosts
  • Root.replyComments
  • Root.setCategoriesOnPosts
  • Root.setFeaturedImageOnCustomPosts
  • Root.setTagsOnPosts
  • Root.updateCustomPosts
  • Root.updatePages
  • Root.updatePosts
  • Comment.replyWithComments
  • CustomPost.addComments

Breaking change : Requiert au moins WordPress v6.0

Pour supporter WordPress v6.6, les blocs du plugin ont dû être recompilés en ciblant WordPress v6.0+.

Ainsi, à partir de v3.0, Gato GraphQL requiert au moins WordPress v6.0.

Breaking change : Le bloc de configuration de schéma "Payload Types for Mutations" peut nécessiter une reconfiguration

Le bloc de configuration de schéma "Payload Types for Mutations" a reçu une nouvelle valeur d'option : "Ne pas utiliser les payload types pour les mutations (c'est-à-dire retourner l'entité mutée)". Pour cette raison, sa structure de données interne a changé.

Si vous avez créé une configuration de schéma avec l'option "Ne pas utiliser les payload types pour les mutations (c'est-à-dire retourner l'entité mutée)" sélectionnée, après la mise à jour vers v3.0 cette valeur de sélection sera perdue. Vous devez modifier la configuration de schéma, sélectionner à nouveau cette option, et enregistrer.


Abonnez-vous à notre newsletter

Restez au courant de toutes les nouveautés de Gato GraphQL.