新 Flow 中的變數

「變數」是執行工作流程時會以特定數值來取代的佔位符。這些變數會描述工作流程中所涉及之顧客、訂單及商品的屬性。舉例來說,訂單編號、訂單金額、顧客名稱等資訊都擁有對應的變數。

多數變數都能從名稱得知其功能。舉例來說,顯示產品名稱的變數就是 {{ product.title }}。當訊息送出後,此變數就會被訂購產品名稱取代:Large Coffee Mug

將變數新增至動作

您可以將變數新增至內含「新增變數」連結的任何文字欄位之中:點擊相關欄位下方的「新增變數」連結,然後從清單中選擇一個變數。

新增變數」清單中的變數會經過篩選,僅向您顯示適用於您所選擇的觸發條件的變數。從清單中選擇變數之後,該變數會進行適當的格式化,然後新增至文字方塊之中。

Flow 支援幾乎所有 GraphQL 管理員 API 欄位。

Liquid 變數

如果您是具有編寫 Shopify Liquid 程式碼經驗的開發人員,可以使用 Liquid 來編寫變數,或使用新增變數連結編輯插入的變數。如需瞭解詳情,請參閱 Liquid 範本語言參考資料

條件與迭代標籤

您可以手動將 Liquid 變數標籤新增至您的工作流程訊息。您可以使用這些標籤,在訊息中包含更多的資訊。

舉例來說,您可以使用for loop物件來迭代物件清單,例如某一筆訂單的商品項目。藉由這些標籤,您可以建立包含訂單詳細資訊的訊息(例如訂單中各個商品項目的商品標題、SKU、價格及數量),使您的收件者無須在 Shopify 管理介面查找這些資訊。

Flow 可支援所有的 Shopify Liquid 條件 (或控制流程) 標籤:

HTTPs://shopify.dev/api/liquid/tags/control-flow-tags#if

Flow 亦可支援所有的 Shopify Liquid 迭代標籤:

篩選

Flow 可支援下列 Shopify Liquid 篩選條件:

Flow 中的 Shopify Liquid 支援的篩選條件
篩選條件名稱 篩選條件類型
abs 數學
append String
at_least 數學
at_most 數學
capitalize String
ceil 數學
concat 陣列
date 其他
default 其他
divided_by 數學
downcase String
escape String
第一 陣列
floor 數學
join 陣列
last 陣列
lstrip String
地圖 陣列
minus 數學
modulo 數學
newline_to_br String
數學
prepend String
remove String
remove_first String
replace String
replace_first String
reverse 陣列
round 數學
rstrip String
大小 陣列
slice String
排序 陣列
split String
strip String
strip_html String
strip_newlines String
times 數學
truncate String
truncatewords String
uniq 陣列
upcase String
url_encode String
哪裡 陣列

變數範例

舉例來說,您想要建立一個工作流程,在顧客的訂單花費超過 $500 美元時傳送電子郵件給員工。您使用帳單已建立觸發條件建立工作流程,在訂單總金額超過 $500 時,將條件設定為 true,接著使用傳送電子郵件動作。在傳送電子郵件動作的訊息區段中,您使用以下變數。

提供顧客詳細資料時所使用的變數範例。
輸入 輸出
請傳送個人感謝備註給 {{ order.customer.firstName }} {{ order.customer.lastName }} ({{ order.customer.email }}), 感謝對方訂購了 $ {{ order.totalPriceSet.shopMoney.amount }} 的商品。 請傳送個人感謝備註給 Jeanne (jeanne@example.com) 感謝對方訂購了 $763.42 美元的商品。

您決定在產品庫存量不足且需要訂購更多庫存商品時,通知員工。您可以建立開頭為庫存數量已變更觸發條件的工作流程,並設定當之前庫存數量小於或等於 10 時為 true 的條件。在傳送電子郵件動作的訊息區段中,您使用以下變數。

<用於供應商品詳細資訊的變數。
輸入 輸出
請重新訂購 {{ product.title }}。請將電子郵件傳送至 owner@store.com,以確認他們已收到採購單。 請重新訂購高腰褲襪:黑色。請將電子郵件傳送至 owner@example.com,以確認他們已收到採購單。

您想要取消高風險的訂單,但偏好由員工手動取消訂單。您可以建立開頭為訂單已建立觸發條件的工作流程,並設定訂單風險等級等於 high 時為 true 的條件。在傳送電子郵件動作的訊息區段中,您使用以下變數。

用於提供詐騙訂單資訊的變數範例。
輸入 輸出
我們的 Shopify 商店已收到擁有高度詐騙風險的訂單。我們希望在訂單送出生產前,立即取消此訂單:

{{ order.name }}
{{ order.billingAddress.lastName }},{{ order.billingAddress.firstName }}
{{ order.email }}

請確認新的訂單狀態。謝謝!
我們的 Shopify 商店已收到擁有高度詐騙風險的訂單。我們希望在訂單送出生產前,立即取消此訂單:

#1001
杜維達,Jeanne
jeanne@example.com

請確認新的訂單狀態。謝謝!

「For 迴圈」範例

收到訂單後,傳送包含已訂購產品的訊息會十分實用。您可以使用重複執行程式碼 for loop 來完成此操作。支援變數的文字欄位也支援迴圈For 迴圈對象

舉例來說,您想要建立一個工作流程,回傳訂單中所有 SKU 和數量的清單。在傳送電子郵件動作的訊息區段中,您使用以下變數。

用於提供訂單資訊的 For 迴圈範例。
輸入 輸出
訂單摘要:
{% for a in order.lineItems %}
SKU: {{a.sku}} ({{a.quantity}}),
{% endfor %}
訂單摘要:
8987097979 (50)
8877778887 (3)
8889988898B (1)

您決定在電子郵件中新增更多資訊,包含產品名稱、SKU、單件商品價格,以及顧客的運送資訊。在傳送電子郵件動作的訊息區段中,您使用以下變數。

提供更廣泛訂單資訊的 For 迴圈使用範例。
輸入 輸出
訂單摘要:
{% for a in order.lineItems %}
:{{a.title}}
SKU:{{a.sku}}
價格 (單位):${{a.originalUnitPriceSet.shopMoney.amount}}
數量:{{a.quantity}}
{% endfor %}
訂單摘要:
產品:高腰褲襪:黑色
SKU:8987097979
價格 (單位):$8.49
數量:5
產品:運動襪:藍色
SKU:888998898B
價格 (單位):$5.61
數量:2

您必須追蹤由特定廠商供應的已售出商品。在傳送電子郵件動作的訊息區段中,您使用以下變數,並在 for loop 中納入 if 陳述式。

用於為特定廠商提供訂單資訊的 For 迴圈和 If 陳述式範例。
輸入 輸出
已售出 Acme 產品:
{% for x in order.lineItems %}
{% if x.vendor == 'acme-vendor' %}
名稱:{{x.title}}
SKU:{{x.sku}}
{% endif %}
{% endfor %}
已售出 Acme 產品:
產品名稱:高腰褲襪:黑色
SKU:8987097979

準備好開始透過 Shopify 銷售商品了嗎?

免費試用