🚀 Automatiseer je WordPress-taken met het nieuwe Gato GraphQL v2.1
We zijn verheugd aan te kondigen dat Gato GraphQL v2.1 nu is uitgebracht!
Met deze nieuwe versie en de PRO-extensies kun je GraphQL als Automatiseerder gebruiken, waarbij je GraphQL persisted queries inzet om gegevensgerelateerde taken in je WordPress-site te automatiseren.
Hieronder staan alle wijzigingen die zijn toegevoegd in v2.1 (een kortere versie is beschikbaar in de Release-opmerkingen op GitHub).
Ondersteuning voor het opgeven van de schemaconfiguratie bij het aanroepen van de interne GraphQL-server
We kunnen nu opgeven welke schemaconfiguratie moet worden toegepast bij het uitvoeren van een query via een interne GraphQL-server (d.w.z. rechtstreeks binnen de PHP-applicatie, niet via een endpoint).
Deze nieuwe functie verbetert de extensie Internal GraphQL Server: hij accepteert nu een $schemaConfigurationIDOrSlug-parameter op de methoden executeQuery en executeQueryInFile van de klasse GraphQLServer, en haalt de schemaconfiguratie die door de persisted query wordt gebruikt al op via executePersistedQuery:
class GraphQLServer {
public static function executeQuery(
string $query,
array $variables = [],
?string $operationName = null,
+ // Accept parameter
+ int|string|null $schemaConfigurationIDOrSlug = null,
): Response {
// ...
}
public static function executeQueryInFile(
string $file,
array $variables = [],
?string $operationName = null,
+ // Accept parameter
+ int|string|null $schemaConfigurationIDOrSlug = null,
): Response {
// ...
}
public static function executePersistedQuery(
WP_Post|string|int $persistedQuery,
array $variables = [],
?string $operationName = null,
+ // Schema Configuration is taken directly from the Persisted Query
): Response {
// ...
}GraphQL als Automatiseerder [PRO]
De bovenstaande functie vormt ook de basis voor het verbeteren van de extensie Automation.
De Automation-extensie biedt nu een "automatiseerder"-gebruikersinterface (rechtstreeks via de WordPress-editor) genaamd Automation Configurator. De automatiseringstrigger is een willekeurige WordPress action hook, en de actie is het uitvoeren van een GraphQL persisted query.

Wanneer bijvoorbeeld een nieuw bericht wordt aangemaakt, controleert automatiseringsregel Add comments block to new post (die de persisted query met dezelfde naam uitvoert) of het blok core/comments aanwezig is en voegt het, indien niet aanwezig, onderaan het bericht toe:

Dit zijn enkele manieren waarop je de automatiseerder kunt gebruiken:
- Maak (en optimaliseer) een uitgelichte afbeelding voor nieuwe berichten met behulp van AI
- Voeg een verplicht blok toe aan het bericht bij publicatie
- Vervang
httpdoorhttpsin alle afbeeldingsbronnen en links wanneer een bericht wordt bijgewerkt - Stuur een e-mail naar de beheerder wanneer er een nieuw bericht is
- Stuur een e-mail naar de gebruiker wiens reactie een nieuwe reactie heeft ontvangen
- [Multisite] Vertaal een nieuw bericht naar verschillende talen en voeg de vertaalde berichten toe aan elke site
- Voer een actie uit op een externe service (bijv. automatisch nieuwe berichten delen op Facebook)
Omdat je de GraphQL persisted queries en automatiseringsregels rechtstreeks in de wp-admin kunt samenstellen, duurt het geen tijd om een volledig op maat gemaakte automatiseringspijplijn te maken die is afgestemd op jouw behoeften.
En omdat er geen beperkingen zijn op de invoer (de GraphQL-query kan communiceren met alle gegevens in WordPress en verbinding maken met elke externe service via een HTTP-client), zou je 100% van je vereisten moeten kunnen vervullen.
(Automatiseerder-plugins voldoen doorgaans aan 95% van onze behoeften, omdat we vaak merken dat bepaalde invoer die we nodig hebben niet is opgenomen.)
Verschillende automatiseringsregels worden al aangemaakt door de plugin (met status draft, dus ze moeten worden bijgewerkt naar publish om van kracht te worden). Je kunt ze al gebruiken, en ook als voorbeelden bekijken om je eigen automatiseringen te maken (deze lijst wordt uitgebreid in verdere releases):
- Add comments block to new post
- Insert block in new post
- Send notification email to admin when there is a new post
- Generate a post's featured image using AI (and optimize it) if a new post has none

Voorgedefinieerde persisted query "Insert block in post"
De nieuw toegevoegde GraphQL persisted query "Insert block in post" maakt het mogelijk een blok in een bericht in te voegen. Het identificeert het n-de blok van een bepaald type (wp:paragraph standaard) in een bericht en plaatst de HTML-inhoud van het opgegeven aangepaste blok er direct na.
Gebruikt met de extensie Automation, kan deze persisted query worden ingezet om automatisch verplichte blokken in te voegen in een nieuw gepubliceerd bericht (bijv. een CTA-blok om een lopende campagne te promoten).
Verbeteringen
- Als het initialiseren van de servicecontainer vanuit de cache mislukt, terugvallen op het initialiseren van het PHP-object vanuit geheugen (#2638)
- Geef een unieke operationName aan alle voorgedefinieerde persisted queries (#2644)
- Verbeterde foutmelding bij het ophalen van blokken uit een bericht waarvan de blokinhoud fouten bevat
- Documentatie voor de Automation-extensie voltooid (#2651)
- Bij de voorgedefinieerde persisted query "Generate a post's featured image using AI and optimize it", voer de logica alleen uit als de berichttitel niet leeg is (#ec931dd)
Opgeloste problemen
- Bug in het multi-control JS-component dat wordt gebruikt door extensies (Access Control, Cache Control en Field Deprecation), waarbij "undefined" werd weergegeven in het blok in de schemaconfiguratie (#2639)
- Bug in regex-vervangingen in voorgedefinieerde persisted queries (#2649)
- Voorkom dat plugin-installatiegegevens opnieuw worden geïnstalleerd bij het deactiveren/opnieuw activeren van de plugin (#2641)
- Behandel de fout bij het doorgeven van WP_Post als GraphQL-variabele aan de interne GraphQL-server (#2652)