觸發器教學元欄位觸發器,逐步解說

元欄位觸發器,逐步解說

複製頁面

關於在產品、變體、訂單、客戶以及另外八種所有者類型上修改元資料欄位(並保留先前值)的 Shopify Flow 逐步教學指南。

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

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

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

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

元字段更新

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

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

用於

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

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

Shopify Flow 中的變數 類型 內容為何
metafieldKey 文字 已更新的元字段的 namespace.key(用於在 Shopify 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. 在 Shopify Flow 中,請選擇「**Metafield Update」**作為觸發器。
  3. 新增條件:metafieldKey 等於 custom.banner_text,且 resourceType 等於 COLLECTION。
  4. 新增「透過 {{metafield.previousValue}} -> {{metafield.value}} 和 {{resourceId}} 寄送內部電子郵件」功能。
  5. 開啟此工作流程。

產品元資料更新

當受監控的產品元資料欄位發生變更時觸發,此時產品以原生 Shopify Flow 參照的形式存在。

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

用於

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

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

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

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

  1. 在應用程式的「元資料欄位觸發器」頁面上新增產品元資料欄位。
  2. 在「Shopify 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
權限 產品、變體與系列資料存取
已開啟 啟用一個使用該功能的「Shopify Flow」工作流程,即可開啟該功能。該功能的專用開關位於應用程式的「**觸發器」**頁面中

用於

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

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

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

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

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

「元字段更新」指令

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

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

用於

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

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

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

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

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

客戶元資料更新

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

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

用於

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

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

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

範例:為達到「金級」的客戶加上標籤

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

下一步

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