Penyelesaian masalah untuk templat Order Printer impor Anda

Saat Anda memigrasikan templat dari aplikasi Order Printer lama ke aplikasi Shopify Order Printer yang baru, variabel Liquid Anda akan diperbarui untuk memastikan kompatibilitas dengan aplikasi baru tersebut. Dalam kasus yang jarang terjadi, Anda mungkin perlu menyelesaikan masalah pada templat impor Anda.

Jika templat impor Anda tidak tercetak dengan benar, Anda mungkin perlu mengedit kode templat secara manual di aplikasi Shopify Order Printer yang baru. Tinjau alasan paling umum berikut mengapa templat mungkin tidak dapat diimpor dengan benar:

  • Templat menyertakan CSS kustom
  • Templat berisi bidang meta
  • Variabel Liquid mungkin tidak diperbarui dengan benar

Di halaman ini, Anda dapat menemukan informasi terperinci tentang cara menyelesaikan potensi masalah saat mengimpor templat kustom Anda ke aplikasi Shopify Order Printer yang baru.

Memperbarui kustomisasi desain CSS umum

Jika templat yang Anda transfer menyertakan CSS kustom, Anda mungkin perlu memperbarui kode CSS di templat secara manual agar elemen desain seperti gambar, fon kustom, logo, atau barkod dapat ditampilkan dengan benar.

Memperbarui variabel metafield

Untuk mengakses metafield, Anda perlu menentukan ruang nama metafield, dan Anda tidak perlu menambahkan .value ke variabel tersebut. Pelajari selengkapnya tentang definisi metafield.

Misalnya, alih-alih menggunakan variabel product.metafields.custom.manufacturerid.value, gunakan variabel product.metafields.custom.manufacturerid.

Untuk mengidentifikasi nilai ruang nama untuk setiap metafield, buka halaman Data kustom di admin Shopify Anda. Definisi metafield dikelompokkan berdasarkan objek yang dirujuk, seperti produk, varian, atau pesanan.

Memperbarui variabel Liquid umum

Dalam sebagian besar kasus, variabel Liquid Anda akan diperbarui secara otomatis selama proses migrasi. Namun, jika templat Anda tidak dimigrasikan dengan benar dan Anda menggunakan salah satu variabel yang tercantum di bagian ini, Anda mungkin perlu mengganti variabel lama dengan variabel baru secara manual. Aplikasi Shopify Order Printer menggunakan variabel yang berbeda dari aplikasi Order Printer lama.

Misalnya, jika Anda menggunakan variabel date, Anda perlu menggantinya dengan variabel created_at.

Variabel pesanan

Variabel pesanan digunakan secara berbeda di aplikasi Shopify Order Printer. Untuk mengakses variabel pesanan, Anda perlu menambahkan prefiks order.. Misalnya, untuk mengakses variabel billing_address, Anda perlu menggunakan order.billing_address.

Variabel pesanan yang umum digunakan berikut ini dapat diakses tanpa prefiks order.:

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

Misalnya, jika Anda ingin mengakses variabel item pesanan, Anda dapat menggunakan line_items atau order.line_items.

Anda juga dapat membuat alias sendiri untuk templat Anda. Misalnya, Anda dapat menggunakan sintaksis Liquid {% assign fulfillments_count = order.fulfillments | size %}, lalu mereferensikannya dengan menggunakan {{ fulfillments_count }} di dalam kode Anda.

Variabel pesanan
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
line_items
  • Item pesanan yang dikembalikan dananya tidak disertakan dalam line_items variabel. Tinjau detail berikut:
    • Anda dapat mengakses item pesanan yang dananya dikembalikan menggunakan variabel refunds.<each>.refund_line_items. Tinjau contoh berikut.
      {% assign refunded_line_items = refunds | map: "refund_line_items" | map: "line_item" %}
    • Anda dapat menggabungkan item pesanan yang dananya dikembalikan ke koleksi line_items jika diinginkan. Tinjau contoh berikut.
      {% 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 %}
    • Anda harus memastikan untuk menyertakan filter | uniq untuk menghindari duplikasi item pesanan yang dikembalikan dananya.
  • Item pesanan tip tidak disertakan dalam line_items variabel. Tinjau detail berikut:
    • Anda dapat mengakses item pesanan tip menggunakan variabel tip_line_items.
    • Anda dapat menggabungkan tip_line_items ke koleksi line_items jika diinginkan. Tinjau contoh berikut.
      {% assign line_items_with_tips = order.line_items | concat: order.tip_line_items %}
  • Untuk meniru koleksi line_items Order Printer versi lama, Anda dapat menggunakan kode contoh berikut.
    {% 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_cardGunakan detail pembayaran berdasarkan setiap transaksi dari pesanan dengan variabel transactions.<each>.payment_details.
current_shipping_priceshipping_price
dateGunakan variabel created_at. Gunakan filter date untuk memformat stempel waktu, misalnya dengan {{ order.created_at | date: "%B %e, %Y" }}.
gatewaysunique_gateways atau transactions.<each>.gateway
order_currencycurrency
processed_atGunakan variabel created_at. Variabel ini menyimpan nilai order.processed_at dari API GraphQL, dan ini berarti waktu aktual saat pesanan diproses, bukan waktu saat pesanan diimpor ke Shopify. Variabel ini sama dengan order.processed_at dari aplikasi Order Printer lama. Anda dapat menggunakan filter date untuk memformat stempel waktu, misalnya dengan {{ order.created_at | date: "%B %e, %Y" }}.
payment_transactions

Filter order.transactions untuk status kind dalam sintaksis Liquid dengan where, atau dengan perulangan dan if di dalamnya. Tinjau contoh berikut.

{% 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_transactionsSaring melalui order.transactions untuk status kind dalam sintaks Liquid menggunakan where, atau dengan perulangan yang di dalamnya berisi if, seperti contoh berikut.
{% assign refund_transactions = order.transactions | where: "kind", "refund" %}
shipping_lineshipping_methods | first
shipping_linesshipping_methods
show_line_item_taxestax_lines.size > 0. Anda dapat menentukannya sebagai variabel di awal templat dan merujuknya beberapa kali, seperti contoh berikut.
{% 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

Variabel LineItem

Variabel LineItem
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
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

Variabel pemenuhan

Variabel pemenuhan
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
datecreated_at

Variabel Shop

Variabel Shop
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
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

Variabel alamat

Variabel alamat
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
latitudeJika variabel address dirujuk dari atribut location, maka lintang dan bujur akan tersedia pada objek location itu sendiri.
longitudeJika variabel address dirujuk dari atribut location, maka lintang dan bujur akan tersedia pada objek location itu sendiri.

Variabel pengembalian dana

Variabel pengembalian dana
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
dateGunakan variabel created_at. Gunakan filter date untuk memformat stempel waktu, misalnya dengan {{ order.created_at | date: "%B %e, %Y" }}.

Variabel ShippingLine

Variabel ShippingLine
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
current_priceprice
priceoriginal_price

Variabel transaksi

Variabel transaksi berikut telah dihapus dan tidak dapat diganti di aplikasi Shopify Order Printer:

  • authorization
  • message
  • test

Variabel varian

Variabel varian
Variabel di aplikasi Order Printer lamaVariabel di aplikasi Shopify Order Printer baru
gramsweight

Variabel metafield

Untuk mengakses metafield, Anda perlu menentukan Namespace metafield tersebut, dan tidak perlu menambahkan .value ke variabel. Pelajari selengkapnya tentang definisi metafield.

Misalnya, alih-alih menggunakan variabel product.metafields.manufacturerid.value, gunakan variabel product.metafields.custom.manufacturerid.

Untuk mengidentifikasi nilai Namespace untuk setiap metafield, buka halaman Data kustom di admin Shopify Anda. Definisi metafield dikelompokkan berdasarkan objek yang dirujuknya, seperti produk, varian, atau pesanan.

Pemetaan filter

Pemetaan filter
Nama filter di aplikasi Order Printer versi lamaNama filter di aplikasi Order Printer Shopify yang baru
files_urlfile_url
payment_method dan payment_methodsGunakan kolom transaction.gateway_display_name pada transaksi pesanan. Metode pembayaran tidak lagi dikategorikan ke dalam jenis tertentu, seperti {kartu kredit, kartu debit, transfer bank}. Aplikasi Order Printer versi lama hanya memetakan sebagian kecil gerbang pembayaran yang berfungsi saat ini ke kategori tersebut. Penyedia gerbang pembayaran mengelola jenis metode pembayaran yang digunakan oleh pelanggan di pihak mereka.