Blog

⭐️ Rilasciato v5.0 con nuove mutations per assegnare tag e categorie ai custom posts, e diversi miglioramenti

Leonardo Losoviz
Di Leonardo Losoviz ·

Gato GraphQL v5.0 è stato rilasciato. Consulta le note di release su GitHub per l'elenco completo delle modifiche.

A partire da questa versione, la versione minima di WordPress è stata innalzata a v6.1.

Di seguito gli aggiornamenti più importanti.

Breaking changes

  • Versione minima di WordPress innalzata a 6.1.

Non restituire alcun risultato quando si filtrano i dati con un array vuoto

Questa query GraphQL filtra gli articoli per ID:

query FilterPostsByIDs(
  $ids: [ID!]
) {
  posts(filter: { ids: $ids }) {
    title
  }
}

In precedenza, passando un array vuoto nella variabile $ids:

{
  "ids": []
}

...l'input filter.ids veniva ignorato, e il campo restituiva quindi tutti i risultati.

Ora, passare un array vuoto significa "non recuperare alcun risultato".

Per ignorare l'input del filtro, passa invece null.

Lo stesso comportamento si applica a tutti i campi che accettano l'input filter.ids:

  • categories
  • comments
  • customPosts
  • tags
  • users
  • ecc

Miglioramenti

  • Aggiunto il campo isGutenbergEditorEnabled
  • Supporto per tassonomie aggiuntive per le mutations su post tag/categorie (non solo post_tag e category)
  • Aggiunto il campo taxonomy anche ai tipi PostTag e PostCategory
  • Aggiunto il campo featuredImage su GenericCustomPost

Aggiunte mutations per assegnare custom tag/categorie ai custom posts

Ora puoi eseguire mutations per assegnare tag e categorie sui custom posts:

mutation SetTagsAndCategoriesOnCustomPost(
  $customPostId: ID!
  $tagIDs: [ID!]!
  $categoryIDs: [ID!]!
  $append: Boolean
) {
  setTagsOnCustomPost(input: {
    id: $customPostId
    tagsBy: {
      ids: $tagIDs
    }
    taxonomy: "some-tag-taxonomy"
    append: $append
  }) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
    customPost {
      tags(taxonomy: "some-tag-taxonomy") {
        id
      }
      tagNames(taxonomy: "some-tag-taxonomy")
    }
  }
 
  setCategoriesOnCustomPost(input: {
    id: $customPostId
    categoriesBy: {
      ids: $categoryIDs
    }
    taxonomy: "some-category-taxonomy"
    append: $append
  }) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
    customPost {
      categories(taxonomy: "some-category-taxonomy") {
        id
      }
      categoryNames(taxonomy: "some-category-taxonomy")
    }
  }
}

Aggiunta opzione nelle Settings per attivare/disattivare i log

La risposta GraphQL completa per elementi specifici (es: durante l'automazione in PRO) può essere registrata nel file wp-content/gatographql/logs/info.log.

È stata aggiunta una nuova opzione Enable Logs? in Settings > Plugin Configuration > General, per attivare la stampa di questi log (è impostata su false di default):

Opzione Enable Logs? nelle Settings

Autenticazione con password applicazione fallita: Mostrare l'errore nella risposta GraphQL

Se utilizzi le password applicazione per autenticare l'utente verso l'endpoint GraphQL, e l'autenticazione fallisce, il messaggio di errore viene ora mostrato nella risposta GraphQL:

{
  "errors": [
    {
      "message": "Application Password authentication error: The provided password is an invalid application password."
    }
  ],
  "data": {
    "me": null
  }
}

Aggiunte persisted queries predefinite

Sono state aggiunte diverse persisted queries:

  • [PRO] Importare un articolo da un feed RSS WordPress e riscriverne il contenuto con ChatGPT
  • [PRO] Importare nuovi articoli da un feed RSS WordPress
  • [PRO] Importare HTML da URL come nuovi articoli in WordPress

Correzioni di bug

  • Sui campi blocks, blockDataItems, e blockFlattenedDataItems, evitare l'errore quando l'articolo non ha contenuto

Iscriviti alla nostra newsletter

Resta aggiornato su tutte le novità di Gato GraphQL.