การแก้ไขปัญหาสำหรับเทมเพลต Order Printer ที่คุณนำเข้ามา

เมื่อคุณโอนย้ายเทมเพลตของคุณจากแอป Order Printer รุ่นเก่าไปยังแอป Shopify Order Printer ใหม่ ตัวแปร Liquid ของคุณจะได้รับการอัปเดตเพื่อให้แน่ใจว่าเข้ากันได้กับแอปใหม่ ในบางกรณีที่เกิดขึ้นไม่บ่อยนัก คุณอาจต้องแก้ไขปัญหาเทมเพลตที่นำเข้ามา

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

  • เทมเพลตรวม CSS แบบกำหนดเอง
  • เทมเพลตมีเมตาฟิลด์
  • ตัวแปร Liquid อาจอัปเดตไม่ถูกต้อง

ในหน้านี้ คุณจะพบข้อมูลโดยละเอียดเกี่ยวกับวิธีแก้ไขปัญหาที่อาจเกิดขึ้นเมื่อนำเข้าเทมเพลตที่คุณกำหนดเองไปยังแอป Shopify Order Printer ใหม่

การอัปเดตการปรับแต่งดีไซน์ CSS ทั่วไป

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

การอัปเดตตัวแปรเมตาฟิลด์

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

ตัวอย่างเช่น แทนที่จะใช้ตัวแปร product.metafields.custom.manufacturerid.value ให้ใช้ตัวแปร product.metafields.custom.manufacturerid

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

การอัปเดตตัวแปร Liquid ทั่วไป

โดยส่วนใหญ่แล้ว ตัวแปร Liquid ของคุณจะอัปเดตโดยอัตโนมัติในระหว่างขั้นตอนการย้าย อย่างไรก็ตาม หากเทมเพลตของคุณไม่ได้โอนย้ายอย่างถูกต้องและคุณใช้ตัวแปรใดๆ ที่ระบุไว้ในส่วนนี้ คุณอาจต้องแทนที่ตัวแปรเก่าด้วยตัวแปรใหม่ด้วยตนเอง แอป Shopify Order Printer ใช้ตัวแปรแตกต่างจากแอป Order Printer รุ่นเก่า

ตัวอย่างเช่น หากคุณใช้ตัวแปร date คุณจะต้องแทนที่ด้วยตัวแปร created_at

ตัวแปรคำสั่งซื้อ

ตัวแปรคำสั่งซื้อจะถูกใช้แตกต่างกันไปในแอป Shopify Order Printer หากต้องการเข้าถึงตัวแปรคำสั่งซื้อ คุณต้องเพิ่มคำนำหน้า order. ตัวอย่างเช่น หากต้องการเข้าถึงตัวแปร billing_address คุณต้องใช้ order.billing_address

คุณสามารถเข้าถึงตัวแปรคำสั่งซื้อที่ใช้กันโดยทั่วไปดังต่อไปนี้ได้โดยไม่ต้องใช้คำนำหน้า order.

  • line_items
  • tax_lines
  • fulfillments
  • transactions
  • refunds
  • shipping_methods
  • customer

ตัวอย่างเช่น หากคุณต้องการเข้าถึงตัวแปรสินค้าเฉพาะรายการ คุณสามารถใช้ line_items หรือ order.line_items ได้

คุณยังสามารถสร้างชื่อแฝงของคุณเองสำหรับเทมเพลตได้อีกด้วย ตัวอย่างเช่น คุณสามารถใช้ไวยากรณ์ Liquid {% assign fulfillments_count = order.fulfillments | size %} จากนั้นอ้างอิงโดยใช้ {{ fulfillments_count }} ในโค้ดของคุณ

ตัวแปรคำสั่งซื้อ
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
line_items
  • สินค้าเฉพาะรายการที่คืนเงินแล้ว จะไม่รวมอยู่ใน line_items ตัวแปร โปรดตรวจสอบรายละเอียดต่อไปนี้
    • คุณสามารถเข้าถึงสินค้าเฉพาะรายการที่มีการคืนเงินโดยใช้ตัวแปร refunds.<each>.refund_line_items ตรวจสอบตัวอย่างต่อไปนี้
      {% assign refunded_line_items = refunds | map: "refund_line_items" | map: "line_item" %}
    • คุณสามารถรวมสินค้าเฉพาะรายการที่มีการคืนเงินเข้ากับคอลเลกชัน line_items ได้หากต้องการ ตรวจสอบตัวอย่างต่อไปนี้
      {% assign refunded_line_items = order.refunds | map: "refund_line_items" | map: "line_item" %} {% assign line_items_with_refunded = order.line_items | concat: refunded_line_items | uniq %}
    • คุณควรตรวจสอบให้แน่ใจว่าคุณได้ใส่ตัวกรอง | uniq เพื่อหลีกเลี่ยงการทำซ้ำสินค้าเฉพาะรายการที่คืนเงินแล้ว
  • สินค้าเฉพาะรายการที่เป็นทิป จะไม่รวมอยู่ใน line_items ตัวแปร โปรดตรวจสอบรายละเอียดต่อไปนี้
    • คุณสามารถเข้าถึงสินค้าเฉพาะรายการที่เป็นทิปได้โดยใช้ตัวแปร tip_line_items
    • คุณสามารถรวม tip_line_items เข้ากับคอลเลกชัน line_items ได้หากต้องการ ตรวจสอบตัวอย่างต่อไปนี้
      {% assign line_items_with_tips = order.line_items | concat: order.tip_line_items %}
  • หากต้องการเลียนแบบคอลเลกชัน line_items ใน Order Printer เวอร์ชันเก่า คุณสามารถใช้โค้ดตัวอย่างต่อไปนี้
    {% assign refunded_line_items = refunds | map: "refund_line_items" | map: "line_item" %} {% assign all_line_items = order.line_items | concat: refunded_line_items | concat: order.tip_line_items | uniq %} {% for line_item in all_line_items %} ... {% endfor %}
credit_cardใช้รายละเอียดการชำระเงินตามแต่ละธุรกรรมจากคำสั่งซื้อด้วยตัวแปร transactions.<each>.payment_details
current_shipping_priceshipping_price
dateใช้ตัวแปร created_at ใช้ตัวกรอง date เพื่อจัดรูปแบบการประทับเวลา เช่น {{ order.created_at | date: "%B %e, %Y" }}
gatewaysunique_gateways หรือ transactions.<each>.gateway
order_currencycurrency
processed_atใช้ตัวแปร created_at ซึ่งจะเก็บค่าของ order.processed_at จาก GraphQL API และหมายถึงเวลาจริงที่คำสั่งซื้อได้รับการประมวลผล แทนที่จะเป็นเวลาที่นำเข้าคำสั่งซื้อมายัง Shopify โดยจะเหมือนกับ order.processed_at จากแอป Order Printer เวอร์ชันเก่า คุณสามารถใช้ตัวกรอง date เพื่อจัดรูปแบบการประทับเวลาได้ ตัวอย่างเช่น {{ order.created_at | date: "%B %e, %Y" }}
payment_transactions

กรอง order.transactions สำหรับสถานะ kind ในไวยากรณ์ของ Liquid ด้วย where หรือด้วยการวนลูปและใช้ if ภายใน โปรดดูตัวอย่างต่อไปนี้

{% assign sale_transactions = order.transactions | where: "kind", "sale" %} {% assign capture_transactions = order.transactions | where: "kind", "capture" %} {% for transaction in transactions %} {% if transaction.kind == "sale" or transaction.kind == "capture" %} Transaction ID: {{ transaction.id }} Kind: {{ transaction.kind }} Amount: {{ transaction.amount | money }} {% endif %} {% endfor %}

{% assign sale_transactions = order.transactions | where: "kind", "sale" %} {% assign capture_transactions = order.transactions | where: "kind", "capture" %} {% assign payment_transactions = sale_transactions | concat: capture_transactions %}

refund_transactionsกรองตาม order.transactions เพื่อดูสถานะ kind ในไวยากรณ์ Liquid โดยใช้ where หรือใช้ลูปและมี if อยู่ภายใน ดังตัวอย่างต่อไปนี้
{% assign refund_transactions = order.transactions | where: "kind", "refund" %}
shipping_lineshipping_methods | first
shipping_linesshipping_methods
show_line_item_taxestax_lines.size > 0 คุณสามารถกำหนดสิ่งนี้เป็นตัวแปรตอนต้นของเทมเพลตและอ้างอิงถึงได้หลายครั้ง ดังตัวอย่างต่อไปนี้
{% if tax_lines.size > 0 %} {% assign show_line_item_taxes = true %} {% else %} {% assign show_line_item_taxes = false %} {% endif %}
total_taxtax_price
total_paidnet_payment

ตัวแปร LineItem

ตัวแปร LineItem
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
fulfillable_quantityquantity - successfully_fulfilled_quantity
fulfilledquantity == successfully_fulfilled_quantity
nametitle
product_titleproduct.title
unit_discountquantity ? line_level_total_discount / quantity : 0
variant_titlevariant.title
weightgrams

ตัวแปรการจัดการคำสั่งซื้อ

ตัวแปรการจัดการคำสั่งซื้อ
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
datecreated_at

ตัวแปร Shop

ตัวแปร Shop
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
owneraccount_owner.name
addressshop.address.address1
address2shop.address.address2
cityshop.address.city
countryshop.address.country
country_codeshop.address.country_code
provinceshop.address.province
province_codeshop.address.province_code
zipshop.address.zip

ตัวแปรที่อยู่

ตัวแปรที่อยู่
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
latitudeหากตัวแปร address ถูกอ้างอิงจากแอตทริบิวต์ location ละติจูดและลองจิจูดจะพร้อมใช้งานในออบเจ็กต์ location
longitudeหากตัวแปร address ถูกอ้างอิงจากแอตทริบิวต์ location ละติจูดและลองจิจูดจะพร้อมใช้งานในออบเจ็กต์ location

ตัวแปรการคืนเงิน

ตัวแปรการคืนเงิน
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
dateใช้ตัวแปร created_at ใช้ตัวกรอง date เพื่อจัดรูปแบบการประทับเวลา เช่น {{ order.created_at | date: "%B %e, %Y" }}

ตัวแปร ShippingLine

ตัวแปร ShippingLine
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
current_priceprice
priceoriginal_price

ตัวแปรธุรกรรม

ตัวแปรธุรกรรมต่อไปนี้ได้ถูกลบออกไปและไม่สามารถแทนที่ได้ในแอป Shopify Order Printer

  • authorization
  • message
  • test

ตัวแปรตัวเลือกสินค้า

ตัวแปรตัวเลือกสินค้า
ตัวแปรในแอป Order Printer รุ่นเก่าตัวแปรในแอป Shopify Order Printer ใหม่
gramsweight

ตัวแปรเมตาฟิลด์

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

ตัวอย่างเช่น แทนที่จะใช้ตัวแปร product.metafields.manufacturerid.value ให้ใช้ตัวแปร product.metafields.custom.manufacturerid

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

การจับคู่ตัวกรอง

การจับคู่ตัวกรอง
ชื่อตัวกรองในแอป Order Printer ดั้งเดิมชื่อตัวกรองในแอป Shopify Order Printer ใหม่
files_urlfile_url
payment_method และ payment_methodsใช้ช่องข้อมูล transaction.gateway_display_name ในธุรกรรมของคำสั่งซื้อ ระบบจะไม่จัดหมวดหมู่วิธีการชำระเงินเป็นประเภทที่เฉพาะเจาะจงอีกต่อไป เช่น {บัตรเครดิต, บัตรเดบิต, การโอนเงินผ่านธนาคาร} แอป Order Printer ดั้งเดิมจับคู่ช่องทางการชำระเงินที่ใช้งานได้ในปัจจุบันเพียงส่วนเล็กๆ กับหมวดหมู่เหล่านี้เท่านั้น ผู้ให้บริการช่องทางการชำระเงินจะเป็นผู้จัดการประเภทของวิธีการชำระเงินที่ลูกค้าใช้จากฝั่งของผู้ให้บริการเอง