元欄位觸發器,逐步解說

「元資料欄位」是用來存放商店中那些《Shopify》未提供對應欄位、且《Shopify Flow》無法對其變更做出反應的資料。這五種觸發器能夠偵測這些變更 - - 而且它們會傳遞《previousValue》屬性,因此工作流程可以區分數值的上升與下降。

根據定義,這些功能全都有效:您只需在應用程式的「**元欄位觸發器」**頁面中選擇要監控的元欄位。若未在該處新增某個元欄位,該元欄位便不會觸發任何動作。有關設定方式,請參閱 元字段觸發器

本頁內容:元資料欄位更新, 產品元資料欄位更新, 產品變體元資料欄位更新, 訂單元資料欄位更新, 客戶元資料欄位更新

Shopify Flow
尋找位置:在「Shopify Flow」中選擇「Select a trigger」,開啟「Workflow Trigger Extensions」,然後搜尋「Metafield」。

元字段更新

當被監控的元資料欄位發生變更時觸發,適用於任何擁有者類型:產品、變體、系列、客戶、訂單、訂單草稿、公司、公司據點、部落格、部落格文章或頁面。

火災源自 Shopify Webhook 加上變更偵測。系統會依照排程檢查變體、部落格、部落格文章及頁面的元資料欄位
權限 產品、變體與系列資料存取
已開啟 根據元欄位定義,在應用程式的「**元欄位觸發器」**頁面上

用於

  • 沒有類型化觸發器的擁有者類型:集合、公司、頁面、部落格文章。
  • 一個會監控多個元資料欄位,並在 metafieldKey 進行分支的工作流程。

Metafield Update 會將哪些資料傳送至您的工作流程

流量中的變量 類型 內容為何
metafieldKey 文字 已更新的元字段的 namespace.key(用於在 Flow 中進行篩選)
resourceType 文字 資源類型(PRODUCT、PRODUCTVARIANT、COLLECTION、CUSTOMER、ORDER、COMPANY、COMPANYLOCATION、ARTICLE、BLOG、PAGE)
resourceId 文字 已更新的資源之 GID
metafield 對象 已更新的元欄位
metafield.id ID 該元欄位的全域識別碼
metafield.namespace 文字 元欄位的命名空間
metafield.key 文字 元字段的鍵
metafield.value 文字 元字段的值
metafield.previousValue 文字 此變更之前的值。若元資料欄位剛建立,則為 Null
metafield.type 文字 元字段的類型
eventId 文字 此事件的 ID。請在應用程式的「事件歷史紀錄」中搜尋此 ID,以查看確切的傳送內容。

範例:回應集合元資料欄位的變更

  1. 在應用程式中開啟「Metafield 觸發器」,點選「新增觸發器」,選擇擁有者類型「**集合」**及其定義,然後儲存。
  2. 在「流程」中,選擇「**元資料欄位更新」**作為觸發器。
  3. 新增條件metafieldKey 等於 custom.banner_text,且 resourceType 等於 COLLECTION
  4. 新增「透過 {{metafield.previousValue}} -> {{metafield.value}}{{resourceId}} 發送內部電子郵件」功能。
  5. 開啟此工作流程。

產品元資料欄位更新

當受監控的產品元資料欄位發生變更時觸發,並將該產品作為 Flow 的原生參照。

火災源自 Shopify Webhook 加上變更偵測
權限 產品、變體與系列資料存取
已開啟 啟用一個使用該功能的 Flow 工作流程,即可開啟該功能。其專屬開關位於應用程式的「**觸發器」**頁面上

用於

  • 直接對產品進行操作:為其加上標籤、發佈它,或更新另一個元資料欄位。
  • 數值元欄位的閾值:評分、庫存預測、供應商交貨期。

「產品元資料更新」會將哪些資料傳送至您的工作流程

流量中的變量 類型 內容為何
product 產品(Shopify) 該產品的元欄位已變更。這是一個完整的「Shopify」產品,因此其所有欄位以及 Flow 自身的产品操作皆可使用。
metafieldKey 文字 已變更的元字段的 namespace.key(用於在 Flow 中進行篩選)
metafield 對象 已更新的元欄位
metafield.id ID 該元欄位的全域識別碼
metafield.namespace 文字 元字段的名稱空間
metafield.key 文字 元字段的鍵
metafield.value 文字 元字段的值
metafield.previousValue 文字 此變更前的值。若元資料欄位剛建立,則為 Null
metafield.type 文字 元字段的類型
eventId 文字 此事件的 ID。請在應用程式的「事件歷史紀錄」中搜尋該 ID,以查看確切的傳送內容。

範例:為評分低於 3 的商品加上標籤

  1. 在應用程式的「元資料欄位觸發器」頁面上新增產品元資料欄位。
  2. 在 Flow 中選擇「產品元資料欄位更新」
  3. 新增一個條件metafieldKey 等於 reviews.rating
  4. 新增**「執行程式碼」**以比較數值,因為元欄位值以文字形式傳入:return dropped: Number(input.metafield.value) < 3 && Number(input.metafield.previousValue) >= 3
  5. 在程式碼的「dropped」輸出處新增一個條件,然後新增產品標籤 low-rating
  6. 開啟此工作流程。
「新增元資料欄位觸發器」對話方塊,其中資源類型為「產品」,並選取了元資料欄位「評分」(custom.rating)
首先請查看應用程式中的元資料欄位:元資料欄位觸發器、新增觸發器、產品、評分。
「事件歷史」中的事件:某產品的「Metafield」更新,值為 2.5,先前值為 4.5
此範例所回應的事件:評分從 4.5 降至 2.5,因此跨越了 3.

產品變體元字段更新

當受監控的變體元字段發生變更時觸發。父產品以參考形式傳入,變體則以「resourceId」傳入。

火災源自 是根據排程進行檢查的,因為 Shopify 不會針對此事件發送 Webhook
權限 產品、變體與系列資料存取
已開啟 啟用一個使用該功能的 Flow 工作流程,即可將其開啟。其專屬開關位於應用程式的「**觸發器」**頁面上

用於

  • 將變體資料彙總至產品層級,例如所有變體中最短的交貨時間。
  • 將變體層級的屬性同步至資料源。

「產品變體元資料欄位更新」會將哪些資料傳送至您的工作流程

流量中的變量 類型 內容為何
product 產品(Shopify) 該變體中元字段發生變更的父產品(請使用此物件來寫入產品中元字段)。這是一個完整的 Shopify 產品,因此其所有字段以及 Flow 自身的產品動作皆可使用。
resourceId 文字 其元字段已變更的產品變體的 GID
metafieldKey 文字 已變更的元欄位的 namespace.key(用於在 Flow 中進行篩選)
metafield 對象 已更新的元欄位
metafield.id ID 該元欄位的全域識別碼
metafield.namespace 文字 元字段的名稱空間
metafield.key 文字 元字段的鍵
metafield.value 文字 元字段的值
metafield.previousValue 文字 此變更前的值。若元資料欄位剛建立,則為 Null
metafield.type 文字 元字段的類型
eventId 文字 此事件的 ID。請在應用程式的「事件歷史紀錄」中搜尋此 ID,以查看確切的傳送內容。

範例:將變體元資料欄位複製至其對應的產品

  1. 在「**元資料欄位觸發器」**頁面中新增變體元資料欄位。
  2. 在「流程」中選擇「產品變體元資料欄位」的更新
  3. product 上新增「Update product metafield」字段,並設定其值為 {{metafield.value}}
  4. 開啟此工作流程。

「元字段更新」指令

當受監控的訂單元字段發生變更時觸發,此時將訂單作為原生參考。

火災源自 Shopify Webhook 加上變更偵測
權限 訂單資料存取
已開啟 啟用一個使用該功能的 Flow 工作流程,即可開啟該功能。該功能的專屬開關位於應用程式的「**觸發器」**頁面上

用於

  • 針對應用程式寫入訂單中的資料做出反應:例如交貨日期、風險評分、ERP 編號。
  • 當核准元字段狀態變更時,啟動履約步驟。

「元資料欄位更新」會將哪些指令傳送至您的工作流程

流量中的變量 類型 內容為何
order 訂單(Shopify) 元資料欄位發生變更的訂單。這是一個完整的「Shopify」訂單,因此其所有欄位以及 Flow 本身的訂單操作皆可使用。
metafieldKey 文字 已變更的元欄位的 namespace.key(用於在 Flow 中進行篩選)
metafield 對象 已更新的元欄位
metafield.id ID 該元欄位的全域識別碼
metafield.namespace 文字 元字段的名稱空間
metafield.key 文字 元字段的鍵
metafield.value 文字 元字段的值
metafield.previousValue 文字 此變更前的值。若元資料欄位剛建立,則為 Null
metafield.type 文字 元字段的類型
eventId 文字 此事件的 ID。請在應用程式的「事件歷史紀錄」中搜尋此 ID,以查看確切的傳送內容。

範例:當訂單的「核准」元欄位值變為 true 時,釋出該訂單

  1. 在「**元資料觸發器」**頁面上新增訂單元資料欄位。
  2. 在「流程」中更新揀貨順序元資料欄位
  3. 新增條件metafieldKey 等於 custom.approved,且 metafield.value 等於 true
  4. 新增一個「針對 order.fulfillmentOrders 執行 **For each」**操作,並設定「釋放履約訂單保留」。
  5. 開啟此工作流程。

客戶元資料更新

當受監控的客戶元字段發生變更時觸發,並以該客戶作為原生參考。

火災源自 Shopify Webhook 加上變更偵測
權限 客戶資料存取
已開啟 啟用一個使用該功能的 Flow 工作流程,即可開啟該功能。其專屬開關位於應用程式的「**觸發器」**頁面中

用於

  • 儲值卡等級、信用額度或生日等資料皆儲存於元資料欄位中。
  • 將表單或應用程式所寫入的客戶屬性同步至 CRM。

「客戶元資料更新」會將哪些資料傳送至您的工作流程

流量中的變量 類型 內容為何
customer 客戶(Shopify) 該客戶的元欄位已變更。此為完整的「Shopify」客戶,因此其所有欄位以及 Flow 自身的客戶操作皆可使用。
metafieldKey 文字 已變更的元欄位的 namespace.key(用於在 Flow 中進行篩選)
metafield 對象 已更新的元欄位
metafield.id ID 該元字段的全域識別碼
metafield.namespace 文字 元字段的名稱空間
metafield.key 文字 元字段的鍵
metafield.value 文字 元字段的值
metafield.previousValue 文字 此變更前的值。若元資料欄位剛建立,則為 Null
metafield.type 文字 元字段的類型
eventId 文字 此事件的 ID。請在應用程式的「事件歷史紀錄」中搜尋此 ID,以查看確切的傳送內容。

範例:為達到黃金級別的客戶加上標籤

  1. 在「**元資料觸發器」**頁面中新增「客戶」元資料欄位。
  2. 在「流程」中選擇「客戶元資料欄位更新」
  3. 新增條件metafieldKey 等於 loyalty.tier,且 metafield.value 等於 gold
  4. 新增客戶標籤gold」,並向 VIP 團隊發送內部電子郵件
  5. 開啟此工作流程。

下一步

除了通用觸發器**之外,**類型化觸發器也會觸發,並且共用該事件,因此同時啟用這兩者並不會在您的方案中重複計數。