Metafield-triggers

Een metafield-trigger wordt geactiveerd wanneer een specifieke metafield-definitie verandert, bij elk van de 10 eigenaarssoorten. Je kiest zelf welke metafields je in de gaten wilt houden, één definitie tegelijk, zodat een winkel met honderden metafields alleen een trigger activeert voor de metafields die voor een workflow van belang zijn.

Ondersteunde soorten eigenaren

Product, Productvariant, Collectie, Klant, Bestelling, Bedrijf, Bedrijfsvestiging, Blog, Blogbericht en Pagina.

Een opzetten

Het voorbeeld op deze pagina houdt een productmetaveld bij met de naam 'Rating' (custom.rating), het soort waarde dat een beoordelingsapp vastlegt.

1. Kies het metaveld

  1. Open ‘Metafield-triggers’ in de navigatie van de app.
  2. Klik op ‘Trigger toevoegen’.
  3. Kies het type bron waartoe het metaveld behoort, bijvoorbeeld Product.
  4. Kies de metafield-definitie uit de lijst - zoek op naam als er veel zijn - en klik op ‘Trigger toevoegen’.

Alleen metafields met een definitie worden weergegeven (Shopify admin, Instellingen, Aangepaste gegevens). De lijst wordt een uur lang bewaard, dus het kan zijn dat een definitie die je zojuist hebt aangemaakt ontbreekt: klik op ‘Metafields vernieuwen’ naast ‘Trigger toevoegen’ en open het dialoogvenster opnieuw.

Het dialoogvenster ‘Trigger voor metafield toevoegen’ met het resourcetype ‘Product’ en de metafields ‘Rating’ en ‘custom.rating’ geselecteerd
Kies het type bron en vervolgens de definitie van het metaveld. De zoekfunctie is handig als er veel opties zijn.

2. Het metaveld wordt nu in de gaten gehouden

Het metaveld wordt in de lijst weergegeven als ‘Actief’. Er hoeft verder niets te worden ingeschakeld: door het hier toe te voegen, wordt het automatisch ingeschakeld. Als je het verwijdert, wordt het niet meer bijgehouden.

De app registreert eerst de huidige waarde van dat metaveld in je bestaande records, zodat de allereerste bewerking al met de juiste oude waarde wordt uitgevoerd.

De lijst met Metafield-triggers met het productmetaveld ‘Rating’ en ‘custom.rating’, weergegeven als ‘Actief’
Het bekeken metaveld ‘Active’. Met ‘Metavelden vernieuwen’ wordt de lijst met definities opnieuw geladen.

3. Wat een evenement met zich meebrengt

Vanaf dat moment wordt bij elke wijziging aan dat metafield de gebeurtenis Metafield Update in Shopify Flow geactiveerd. De gebeurtenis bevat de naamruimte en de sleutel, het record waartoe het behoort, de nieuwe waarde en previousValue - de waarde die het metafield eerder had. previousValue is leeg wanneer het metafield net voor het eerst is ingesteld.

In het voorbeeld daalde de beoordeling van 4,5 naar 2,5. Een workflowvoorwaarde „waarde is kleiner dan 3 en previousValue is 3 of meer“ wordt één keer geactiveerd, op het moment dat de beoordeling onder de 3 zakt, in plaats van bij elke latere wijziging. Stap voor stap: Metafield-triggers, stap voor stap.

Een gebeurtenis in de gebeurtenisgeschiedenis: Metafield-update voor een product, waarde 2,5 en vorige waarde 4,5
Eén gebeurtenis, geopend: de beoordeling is nu 2,5 en volgens `previousValue` was deze 4,5.

De generieke trigger en de getypeerde triggers

Er zijn twee manieren om wijzigingen in metavelden te verwerken:

Trigger Omslagen Levert
Metafield-update Alle 10 soorten eigenaren Naamruimte, sleutel, eigenaars-ID, oude en nieuwe waarde
Metafield-update aanvragen Alleen bestellingen Hetzelfde, plus de opdracht als een native Flow-referentie
Update van productmetavelden Alleen producten Hetzelfde, plus het product als native-referentie
Update van het metafield van de klant Alleen voor klanten Hetzelfde, plus de klant als inheemse referentie
Update van het metafield ‘Productvariant’ Alleen productvarianten Hetzelfde, plus het bovenliggende product als native-referentie

Gebruik een getypeerde trigger wanneer je workflow actie moet ondernemen op de bron zelf, bijvoorbeeld om de bestelling te taggen of de regelitems ervan te lezen. Dankzij de native verwijzing kan Flow zijn eigen Shopify-acties rechtstreeks op de bron toepassen, zonder dat er een opzoekstap nodig is.

Gebruik de generieke trigger wanneer je alleen wilt weten of een waarde is gewijzigd, of wanneer je een ‘owner’-type in de gaten houdt dat geen getypeerde variant heeft.

De getypeerde triggers hebben elk hun eigen schakelaar op de pagina ‘Triggers’ (door een Flow-workflow in te schakelen die er een gebruikt, wordt deze geactiveerd) en worden naast de algemene trigger geactiveerd. Ze delen één gebeurtenis, dus als je beide inschakelt, telt dit niet dubbel mee voor je quotum.