가져온 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를 사용할 수 있습니다.

템플릿에 나만의 별칭을 만들 수도 있습니다. 예를 들어, {% assign fulfillments_count = order.fulfillments | size %} Liquid 구문을 사용한 다음 코드에서 {{ 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_itemsline_items 컬렉션에 포함할 수 있습니다. 다음 예제를 검토하세요.
      {% assign line_items_with_tips = order.line_items | concat: order.tip_line_items %}
  • 기존 Order Printer line_items 컬렉션을 모방하기 위해 다음 예제 코드를 사용할 수 있습니다.
    {% 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
날짜 created_at 변수를 사용합니다. 날짜 필터를 사용하여 타임 스탬프의 형식을 지정합니다(예: {{ order.created_at | date: "%B %e, %Y" }}).
게이트웨이 unique_gateways 또는 transactions.<each>.gateway
order_currency통화
processed_at created_at 변수를 사용합니다. 해당 변수는 GraphQL API의 order.processed_at 값을 보유합니다. 즉 Shopify로 주문을 가져온 시간이 아니라 주문이 처리된 실제 시간을 의미합니다. 이는 기존 Order Printer 앱의 order.processed_at과 동일합니다. 날짜 필터를 사용하여 타임 스탬프의 형식을 지정할 수 있습니다(예: {{ order.created_at | date: "%B %e, %Y" }}).
payment_transactions

where 또는 루프 및 if가 포함된 Liquid 구문에서 종류 상태에 대해 order.transactions를 필터링합니다. 다음 예제를 검토하세요.

{% 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" %} 거래 ID: {{ transaction.id }} 종류: {{ transaction.kind }} 금액: {{ 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다음 예시와 같이 where 또는 루프 및 if가 포함된 Liquid 구문에서 종류 상태에 대해 order.transactions를 필터링합니다.
{% assign refund_transactions = order.transactions | where: "kind", "refund" %}
shipping_lineshipping_methods | first
shipping_linesshipping_methods
show_line_item_taxes tax_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
주문 처리됨quantity == successfully_fulfilled_quantity
이름제목
product_title제품.이름
unit_discountquantity ? line_level_total_discount / quantity : 0
variant_titlevariant.title
weight그램

주문 처리 변수

주문 처리 변수
기존 Order Printer 앱의 변수새로운 Shopify Order Printer 앱의 변수
날짜created_at

상점 변수

상점 변수
기존 Order Printer 앱의 변수새로운 Shopify Order Printer 앱의 변수
소유자account_owner.name
주소shop.address.address1
address2shop.address.address2
cityshop.address.city
국가shop.address.country
country_codeshop.address.country_code
provinceshop.address.province
province_codeshop.address.province_code
우편 번호shop.address.zip

주소 변수

주소 변수
기존 Order Printer 앱의 변수새로운 Shopify Order Printer 앱의 변수
위도 주소 변수가 위치 속성에서 참조된 경우, 위치 개체 자체에서 위도 및 경도를 사용할 수 있습니다.
경도 주소 변수가 위치 속성에서 참조된 경우, 위치 개체 자체에서 위도 및 경도를 사용할 수 있습니다.

환불 변수

환불 변수
기존 Order Printer 앱의 변수새로운 Shopify Order Printer 앱의 변수
날짜 created_at 변수를 사용합니다. 날짜 필터를 사용하여 타임 스탬프의 형식을 지정합니다(예: {{ order.created_at | date: "%B %e, %Y" }}).

ShippingLine 변수

ShippingLine 변수
기존 Order Printer 앱의 변수새로운 Shopify Order Printer 앱의 변수
current_price가격
가격original_price

거래 변수

다음 거래 변수가 제거되어 Shopify Order Printer 앱에서 교체할 수 없습니다.

  • authorization
  • message
  • test

이형 상품 변수

이형 상품 변수
기존 Order Printer 앱의 변수새로운 Shopify Order Printer 앱의 변수
그램weight

메타 필드 변수

메타 필드에 액세스하려면 메타 필드의 네임스페이스를 지정해야 하며 변수에 .value를 추가할 필요가 없습니다. 자세한 내용은 메타 필드 정의를 참조하세요.

예를 들어 product.metafields.manufacturerid.value 변수 대신 product.metafields.custom.manufacturerid 변수를 사용하세요.

각 메타 필드에 대한 네임스페이스 값을 식별하려면 Shopify 관리자의 사용자 지정 데이터 페이지를 참조하세요. 메타 필드 정의는 제품, 이형 상품 또는 주문과 같이 참조하는 개체로 그룹화됩니다.

필터 매핑

필터 매핑
기존 Order Printer 앱의 필터 이름새로운 Shopify Order Printer 앱의 필터 이름
files_urlfile_url
payment_methodpayment_methods transaction.gateway_display_name 필드를 주문 거래에 사용합니다. 결제 방법을 더 이상 {신용 카드, 직불 카드, 은행 송금} 등의 특정 유형으로 범주화할 수 없습니다. 기존 Order Printer 앱은 현재 작동 중인 전자결제 대행사의 작은 하위 집합만 이 범주로 매핑했습니다. 전자결제 대행사 공급업체는 고객 측에서 사용하는 결제 방법 유형을 관리합니다.
적절한 답변을 찾을 수 없습니까? 언제든지 도와드리겠습니다.