Felsökning av importerade Order Printer-mallar

När du migrerar mallar från den äldre appen Order Printer till den nya appen Shopify Order Printer uppdateras Liquid-variablerna för att säkerställa kompatibilitet med den nya appen. I sällsynta fall kan du behöva felsöka de importerade mallarna.

Om de importerade mallarna inte skrivs ut korrekt kan du behöva redigera mallkoden manuellt i den nya appen Shopify Order Printer. Granska de vanligaste orsakerna till varför mallar kanske inte importeras korrekt:

  • Mallar innehåller anpassad CSS
  • Mallar innehåller metafält
  • Liquid-variabler kanske inte uppdateras korrekt

På den här sidan hittar du detaljerad information om hur du felsöker potentiella problem när du importerar dina anpassade mallar till den nya appen Shopify Order Printer.

Uppdatera vanliga CSS-designanpassningar

Om mallarna du överför inkluderar anpassad CSS kan du behöva uppdatera CSS-koden manuellt i dina mallar för att korrekt visa designelement, till exempel bilder, anpassade teckensnitt, logotyper eller streckkoder.

Uppdatera metafältvariabler

För att komma åt ett metafält måste du ange metafältets namnrymd, och du behöver inte lägga till .value till variabeln. Mer information om definitioner för metafält.

I stället för variabeln product.metafields.custom.manufacturerid.value använder du till exempel variabelnproduct.metafields.custom.manufacturerid.

För att identifiera namnrymdsvärden för varje metafält, se sidan Anpassade data i din Shopify-admin. Definitioner för metafält är grupperade efter de objekt de hänvisar till, till exempel produkter, varianter eller ordrar.

Uppdatera vanliga Liquid-variabler

I de flesta fall uppdateras dina Liquid-variabler automatiskt under migreringsprocessen. Om dina mallar inte migreras korrekt och du använder någon av de variabler som listas i det här avsnittet kan du dock behöva ersätta dina gamla variabler med nya variabler manuellt. Shopify Order Printer-appen använder andra variabler än den äldre Order Printer-appen.

Om du till exempel använder variabeln date måste du ersätta den med variabeln created_at.

Ordervariabler

Ordervariabler används på ett annat sätt i Shopify Order Printer-appen. För att komma åt ordervariabler måste du lägga till prefixet order.. För att till exempel komma åt variabeln billing_address måste du använda order.billing_address.

Följande vanliga ordervariabler är tillgängliga utan prefixet order.:

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

Om du till exempel vill komma åt postvariabeln kan du använda line_items eller order.line_items.

Du kan även skapa egna alias för din mall. Du kan till exempel använda Liquid-syntaxen {% assign fulfillments_count = order.fulfillments | size %} och sedan referera till den med hjälp av {{ fulfillments_count }} i din kod.

Ordervariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
line_items
  • Återbetalade poster ingår inte i line_items variabeln. Granska följande information:
    • Du kan komma åt återbetalade poster med hjälp av variabeln refunds.<each>.refund_line_items. Se följande exempel.
      {% assign refunded_line_items = refunds | map: "refund_line_items" | map: "line_item" %}
    • Du kan lägga till de återbetalade posterna i samlingen line_items om du vill. Se följande exempel.
      {% 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 %}
    • Se till att du inkluderar filtret | uniq för att undvika duplicering av de återbetalade posterna.
  • Dricksposter ingår inte i line_items variabeln. Granska följande information:
    • Du kan komma åt dricksposter med variabeln tip_line_items.
    • Du kan lägga till tip_line_items i samlingen line_items om du vill. Se följande exempel.
      {% assign line_items_with_tips = order.line_items | concat: order.tip_line_items %}
  • För att efterlikna samlingen line_items i äldre Order Printer kan du använda följande exempelkod.
    {% 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_cardAnvänd betalningsuppgifter baserat på varje transaktion från ordern med variabeln transactions.<each>.payment_details.
current_shipping_priceshipping_price
dateAnvänd variabeln created_at. Använd filtret date för att formatera tidsstämpeln, till exempel med {{ order.created_at | date: "%B %e, %Y" }}.
gatewaysunique_gateways eller transactions.<each>.gateway
order_currencycurrency
processed_atAnvänd variabeln created_at. Den innehåller värdet för order.processed_at från GraphQL API:et och avser den faktiska tidpunkten då ordern behandlas, snarare än tidpunkten då ordern importeras till Shopify. Den är samma som order.processed_at från den äldre Order Printer-appen. Du kan använda filtret date för att formatera tidsstämpeln, till exempel med {{ order.created_at | date: "%B %e, %Y" }}.
payment_transactions

Filtrera igenom order.transactions för statusen kind i Liquid-syntaxen med where, eller med en loop och en if-sats. Granska följande exempel.

{% 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" %} Transaktions-ID: {{ transaction.id }} Typ: {{ transaction.kind }} Belopp: {{ 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_transactionsFiltrera order.transactions för statusen kind i Liquid-syntaxen med where eller med looping och ett if inuti, som i följande exempel.
{% assign refund_transactions = order.transactions | where: "kind", "refund" %}
shipping_lineshipping_methods | first
shipping_linesshipping_methods
show_line_item_taxestax_lines.size > 0. Du kan definiera den som en variabel i början av mallen och hänvisa till den flera gånger, som i följande exempel.
{% 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

Radartikelvariabler

Radartikelvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
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

Distributionsvariabler

Distributionsvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
datecreated_at

Butiksvariabler

Butiksvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
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

Adressvariabler

Adressvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
latitudeOm variabeln address refererades från attributet location, så är latitud och longitud tillgängliga på själva location-objektet.
longitudeOm variabeln address refererades från attributet location, så är latitud och longitud tillgängliga på själva location-objektet.

Återbetalningsvariabler

Återbetalningsvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
dateAnvänd variabeln created_at. Använd filtret date för att formatera tidsstämpeln, till exempel med {{ order.created_at | date: "%B %e, %Y" }}.

Fraktradsvariabler

Fraktradsvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
current_priceprice
priceoriginal_price

Transaktionsvariabler

Följande transaktionsvariabler har tagits bort och kan inte ersättas i Shopify Order Printer-appen:

  • authorization
  • message
  • test

Variantvariabler

Variantvariabel
Variabel i den äldre Order Printer-appenVariabel i den nya Shopify Order Printer-appen
gramsweight

Metafältsvariabler

För att komma åt ett metafält måste du ange metafältets namnrymd, och du behöver inte lägga till .value i variabeln. Läs mer om definitioner för metafält.

Använd till exempel variabeln product.metafields.custom.manufacturerid i stället för variabeln product.metafields.manufacturerid.value.

För att identifiera värden för namnrymd för varje metafält, se sidan Anpassade data i din Shopify-admin. Definitioner för metafält grupperas efter de objekt de refererar till, till exempel produkter, varianter eller ordrar.

Filtermappning

Filtermappning
Filternamn i den äldre Order Printer-appenFilternamn i den nya Shopify Order Printer-appen
files_urlfile_url
payment_method och payment_methodsAnvänd fältet transaction.gateway_display_name för ordertransaktioner. Betalningsmetoder kategoriseras inte längre i specifika typer, till exempel {kreditkort, bankkort, banköverföring}. Den äldre Order Printer-appen mappade endast en liten delmängd av för närvarande fungerande betalnings-gateways till dessa kategorier. Leverantörer av betalnings-gateways hanterar de typer av betalningsmetoder som kunder använder på sin sida.