ตัวแปรใน Shopify Flow

ตัวแปรคือตัวยึดตำแหน่งที่จะถูกแทนที่ด้วยค่าต่างๆ เมื่อขั้นตอนการทำงานดำเนินการ ตัวแปรเหล่านี้บรรยายคุณลักษณะของลูกค้า คำสั่งซื้อ และสินค้าที่เกี่ยวข้องกับขั้นตอนการทำงานของคุณ ยกตัวอย่างเช่น มีตัวแปรสำหรับเลขคำสั่งซื้อ มูลค่าคำสั่งซื้อ ชื่อลูกค้า เป็นต้น

Flow ใช้ Liquid ในเวอร์ชันที่แตกต่างจากธีม Shopify และสามารถเข้าถึงตัวแปรใดๆ ที่พร้อมให้ใช้งานผ่าน GraphQL Admin API ได้

ชื่อของตัวแปรส่วนใหญ่เป็นชื่อที่อธิบายลักษณะของตัวแปรนั้นๆ ยกตัวอย่างเช่น ตัวแปรที่แสดงชื่อของสินค้าคือ {{ product.title }} เมื่อข้อความได้ถูกส่งไปแล้ว ตัวแปรนี้จะถูกแทนที่ด้วยชื่อของสินค้าที่ได้รับการสั่งซื้อ: Large Coffee Mug

การเพิ่มตัวแปรไปยังการดำเนินการ

คุณสามารถเพิ่มตัวแปรไปยังช่องข้อความที่มีลิงก์เพิ่มตัวแปรได้ คลิกลิงก์เพิ่มตัวแปรใต้ช่องที่เกี่ยวข้อง จากนั้นเลือกตัวแปรจากรายการ

ตัวแปรในรายการ เพิ่มตัวแปร นั้นจะได้รับการกรอง คุณจึงจะเห็นเพียงแค่ตัวแปรที่ใช้ได้กับทริกเกอร์ที่คุณเลือกเท่านั้น หลังจากคุณเลือกตัวแปรจากรายการแล้ว ตัวแปรจะได้รับการจัดรูปแบบให้เหมาะสมและเพิ่มไปยังกล่องข้อความสำหรับคุณ

Flow รองรับช่อง GraphQL Admin API เกือบทั้งหมด

ตัวแปร Liquid

หากคุณเป็นพัฒนาที่มีประสบการณ์ในการเขียนโค้ด Liquid คุณจะสามารถใช้ Liquid ในการเขียนตัวแปรหรือแก้ไขตัวแปรที่คุณแทรกโดยใช้ลิงก์เพิ่มตัวแปรได้ หากต้องการดูข้อมูลเพิ่มเติม ให้ดูที่การอ้างอิง GraphQL Admin API

แท็กเงื่อนไขและการทำซ้ำ

คุณสามารถเพิ่มแท็กตัวแปร Liquid ไปยังข้อความขั้นตอนการทำงานของคุณได้ด้วยตนเอง โดยใช้แท็กเหล่านี้เพื่อใส่ข้อมูลเพิ่มเติมในข้อความได้

ตัวอย่างเช่น คุณสามารถใช้วัตถุ for loop เพื่อทำซ้ำผ่านรายการวัตถุต่างๆ เช่นสินค้าเฉพาะรายการสำหรับคำสั่งซื้อได้ คุณสามารถใช้แท็กเหล่านี้เพื่อสร้างข้อความที่มีรายละเอียดอย่างชื่อสินค้า, SKU, ราคา และจำนวนสำหรับสินค้าเฉพาะรายการแต่ละชิ้นในคำสั่งซื้อ และช่วยให้ผู้รับไม่ต้องค้นหาข้อมูลนี้ในส่วน Shopify admin ของคุณอีก

Flow รองรับแท็กเงื่อนไข Liquid (หรือแท็กควบคุมขั้นตอนการทำงาน) ต่อไปนี้:

นอกจากนี้ Flow ยังรองรับแท็กการทำซ้ำของ Liquid ต่อไปนี้อีกด้วย:

ตัวกรอง

Flow รองรับตัวกรอง Liquid ต่อไปนี้:

ตัวกรอง Liquid ที่ Flow รองรับ
ชื่อตัวกรอง ประเภทตัวกรอง
abs คณิตศาสตร์
append สตริง
at_least คณิตศาสตร์
at_most คณิตศาสตร์
capitalize สตริง
ceil คณิตศาสตร์
concat Array
วันที่ เพิ่มเติม
ค่าเริ่มต้น เพิ่มเติม
divided_by คณิตศาสตร์
downcase สตริง
escape สตริง
ก่อน Array
floor คณิตศาสตร์
join Array
last Array
lstrip สตริง
map Array
minus คณิตศาสตร์
modulo คณิตศาสตร์
newline_to_br สตริง
บวก คณิตศาสตร์
prepend สตริง
ลบ สตริง
remove_first สตริง
แทนที่ สตริง
replace_first สตริง
reverse Array
round คณิตศาสตร์
rstrip สตริง
ขนาด Array
slice สตริง
จัดเรียง Array
split สตริง
strip สตริง
strip_html สตริง
strip_newlines สตริง
ครั้ง คณิตศาสตร์
truncate สตริง
truncatewords สตริง
uniq Array
upcase สตริง
url_encode สตริง
ที่ไหน Array

ตัวอย่างตัวแปร

ตัวอย่างเช่น คุณต้องการสร้างขั้นตอนการทำงานที่จะส่งอีเมลไปยังพนักงานเมื่อลูกค้าใช้จ่ายมากกว่า $500 ในคำสั่งซื้อเดียว คุณต้องสร้างขั้นตอนการทำงานที่ใช้ทริกเกอร์สร้างคำสั่งซื้อแล้วขึ้น ตั้งเงื่อนไขที่จะเป็นจริงหากยอดรวมของคำสั่งซื้อเกินกว่า $500 และใช้การดำเนินการส่งอีเมลภายใน ในส่วนข้อความของการดำเนินการส่งอีเมลภายในนั้น คุณต้องใช้ตัวแปรต่อไปนี้

ตัวอย่างของตัวแปรที่ใช้เพื่อให้รายละเอียดลูกค้า
อินพุต เอาท์พุต
โปรดส่งบันทึกขอบคุณส่วนบุคคลไปยัง {{ order.customer.firstName }} {{ order.customer.lastName }}({{ order.customer.email }}) สำหรับการสั่งซื้อราคา $ {{ order.totalPriceSet.shopMoney.amount }} โปรดส่งบันทึกขอบคุณส่วนตัวไปยัง Jeanne Dupont (jeanne@example.com) ในการสั่งซื้อสินค้าราคา $763.42

คุณตัดสินใจว่าคุณต้องแจ้งให้พนักงานทราบเมื่อสินค้าคงคลังเหลือน้อยและต้องมีการสั่งซื้อเข้าสต็อกเพิ่ม คุณต้องสร้างขั้นตอนการทำงานที่เริ่มต้นด้วยทริกเกอร์เปลี่ยนปริมาณสินค้าคงคลังแล้ว และตั้งเงื่อนไขที่จะเป็นจริงหากปริมาณสินค้าคงคลังก่อนหน้าน้อยกว่าหรือเท่ากับ 10 ในส่วนข้อความของการดำเนินการส่งอีเมลภายในนั้น คุณต้องใช้ตัวแปรต่อไปนี้

ตัวอย่างการใช้ตัวแปรเพื่อให้รายละเอียดรายการสินค้า
อินพุต เอาท์พุต
โปรดสั่งซื้อ{{ product.title }}อีกครั้ง ส่งอีเมลไปยัง owner@store.com เพื่อตรวจสอบยืนยันว่าพวกเขาได้รับคำสั่งซื้อแล้ว โปรดสั่งซื้อกางเกงเลกกิ้งเอวสูง - สีดำซ้ำอีกครั้ง ส่งอีเมลไปยัง owner@example.com เพื่อตรวจสอบยืนยันว่าพวกเขาได้รับคำสั่งซื้อแล้ว

คุณต้องการยกเลิกคำสั่งซื้อที่มีระดับความเสี่ยงสูง แต่ต้องการให้พนักงานของคุณยกเลิกคำสั่งซื้อด้วยตนเอง คุณต้องสร้างขั้นตอนการทำงานที่เริ่มต้นด้วยทริกเกอร์สร้างคำสั่งซื้อแล้ว และตั้งเงื่อนไขที่จะเป็นจริงหากคำสั่งซื้อมีระดับความเสี่ยงเท่ากับสูง ในส่วนข้อความของการดำเนินการส่งอีเมลภายในนั้น คุณต้องใช้ตัวแปรต่อไปนี้

ตัวอย่างของตัวแปรที่ใช้เพื่อให้ข้อมูลเกี่ยวกับคำสั่งซื้อจากการฉ้อโกงด้านการชำระเงิน
อินพุต เอาท์พุต
ร้านค้า Shopify ของเราได้รับคำสั่งซื้อที่มีความเสี่ยงที่จะเป็นการทุจริตสูง เราต้องการยกเลิกสินค้าตามคำสั่งซื้อนี้ทันที ก่อนที่จะมีการส่งไปยังส่วนการผลิต:

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

โปรดยืนยันสถานะคำสั่งซื้อใหม่ ขอขอบคุณ
ร้านค้า Shopify ของเราได้รับคำสั่งซื้อที่มีความเสี่ยงที่จะเป็นการทุจริตสูง เราต้องการยกเลิกสินค้าตามคำสั่งซื้อนี้ทันที ก่อนที่จะมีการส่งไปยังส่วนการผลิต:

#1001
Dupont, Jeanne
jeanne@example.com

โปรดยืนยันสถานะคำสั่งซื้อใหม่ ขอขอบคุณ

ตัวอย่าง For Loop

เมื่อได้รับคำสั่งซื้อมาแล้ว การส่งข้อความระบุสินค้าที่ลูกค้าสั่งซื้อก็อาจเป็นประโยชน์ได้ คุณสามารถทำเช่นนี้ได้โดยใช้ for loop ซึ่งจะเป็นการสั่งให้ระบบดำเนินการตามบล็อกโค้ดซ้ำๆ นอกจากนี้ ช่องข้อความที่รองรับตัวแปรจะยังรองรับ for loop และอ็อบเจกต์ forloop ด้วย

ตัวอย่างเช่น คุณต้องการสร้างขั้นตอนการทำงานที่จะส่งคืนรายการของ SKU และปริมาณทั้งหมดในคำสั่งซื้อหนึ่ง ในส่วนข้อความของการดำเนินการส่งอีเมลภายในนั้น คุณต้องใช้ตัวแปรต่อไปนี้

ตัวอย่างของ For Loop ที่ใช้เพื่อให้ข้อมูลคำสั่งซื้อ
อินพุต เอาท์พุต
ข้อมูลสรุปการสั่งซื้อ:
{% for a in order.lineItems %}
SKU: {{a.sku}} ( {{a.quantity}} ),
{% endfor %}
ข้อมูลสรุปคำสั่งซื้อ:
8987097979 (50)
8877778887 (3)
888998898B (1)

คุณตัดสินใจเพิ่มข้อมูลเพิ่มเติมไปยังอีเมล ได้แก่ ชื่อสินค้า, SKU, ราคาต่อรายการ และข้อมูลการจัดส่งของลูกค้า ในส่วนข้อความของการดำเนินการส่งอีเมลภายในนั้น คุณต้องใช้ตัวแปรต่อไปนี้

ตัวอย่างของ For Loop ที่ใช้เพื่อให้ข้อมูลคำสั่งซื้อแบบครอบคลุม
อินพุต เอาท์พุต
ข้อมูลสรุปการสั่งซื้อ:
{% 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

คุณต้องติดตามรายการสินค้าที่ขายได้ซึ่งผู้ขายรายใดรายหนึ่งจัดเตรียมให้ ในส่วนข้อความของการดำเนินการส่งอีเมลภายใน คุณต้องใช้ตัวแปรดังต่อไปนี้และใส่ข้อความ if ใน for loop ของคุณ

ตัวอย่างของ for loop และข้อความ if ที่ใช้เพื่อให้ข้อมูลคำสั่งซื้อกับผู้ขายรายใดรายหนึ่ง
อินพุต เอาท์พุต
สินค้าที่ขายได้ของ Acme:
{% for x in order.lineItems %}
{% if x.vendor == 'acme-vendor' %}
ชื่อสินค้า: {{x.title}}
SKU: {{x.sku}}
{% endif %}
{% endfor %}
สินค้าที่ขายได้ของ Acme:
ชื่อสินค้า: กางเกงเลกกิ้ง - สีดำ
SKU: 8987097979

อ็อบเจกต์ข้อมูลที่ซับซ้อนใน Shopify Flow

Shopify Flow ไม่รองรับการส่งออกข้อมูลอาร์เรย์และอ็อบเจกต์ด้วยเหตุผลดังต่อไปนี้:

  • เลิกใช้งานการแสดงข้อมูลที่ไม่จำเป็นบน GraphQL API เพราะการแสดงข้อมูลนี้อาจสร้างคำสั่งการค้นหาขนาดใหญ่ที่ทําให้ขั้นตอนการทำงานของคุณล้มเหลว
  • เมื่อมีฟีเจอร์ใหม่เข้ามา ช่อง API ใหม่จะถูกเพิ่มเข้ามาด้วย ซึ่งอาจทำให้ขั้นตอนการทำงานของคุณมีปัญหา

หากระบบส่งข้อมูลโดยอัตโนมัติมากเกินไป ขั้นตอนการทำงานจะล้มเหลว แทนที่จะเรียกใช้งานอาร์เรย์และอ็อบเจกต์โดยตรง ให้ลูปเลี่ยงอาร์เรย์และใส่เฉพาะช่องที่คุณต้องการ

ตัวอย่างเช่น แทนที่จะโทร{{ order.lineItems }}โดยตรง ให้ใช้รูปแบบต่อไปนี้เพื่อเรียกช่องข้อมูลเฉพาะ ตัวอย่างเหล่านี้รวมช่องทั้งหมดที่จะรวมอยู่ด้วยจากการเรียกอาร์เรย์หรืออ็อบเจกต์โดยตรง คัดลอกและวางช่องที่คุณต้องการ

พร้อมเริ่มต้นการขายด้วย Shopify แล้วหรือยัง

ทดลองใช้งานฟรี