اپنی درآمد شدہ 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 استعمال کر سکتے ہیں۔

آپ اپنے ٹیمپلیٹ کے لیے خود اپنے عرف (aliases) بھی بنا سکتے ہیں۔ مثال کے طور پر، آپ {% 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_items کو line_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_cardtransactions.<each>.payment_details ویری ایبل کے ساتھ آرڈر سے ہر ٹرانزیکشن کی بنیاد پر ادائیگی کی تفصیلات استعمال کریں۔
current_shipping_priceshipping_price
datecreated_at ویری ایبل استعمال کریں۔ ٹائم سٹیمپ کو فارمیٹ کرنے کے لیے date فلٹر استعمال کریں، مثال کے طور پر {{ order.created_at | date: "%B %e, %Y" }} کے ساتھ۔
gatewaysunique_gateways یا transactions.<each>.gateway
order_currencycurrency
processed_atcreated_at ویری ایبل استعمال کریں۔ اس میں GraphQL API کی جانب سے order.processed_at کی ویلیو موجود ہوتی ہے، اور اس کا مطلب آرڈر کے پراسیس ہونے کا اصل وقت ہے، نہ کہ وہ وقت جب آرڈر Shopify میں امپورٹ کیا گیا تھا۔ یہ بالکل لیگیسی Order Printer ایپ کے order.processed_at جیسا ہے۔ آپ ٹائم سٹیمپ کو فارمیٹ کرنے کے لیے date فلٹر استعمال کر سکتے ہیں، مثال کے طور پر {{ order.created_at | date: "%B %e, %Y" }} کے ساتھ۔
payment_transactions

Liquid سنٹیکس میں where کے ساتھ، یا لوپنگ اور اس کے اندر if کے ساتھ kind سٹیٹس کے لیے 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" %} 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_transactionsLiquid سنٹیکس میں kind کے اسٹیٹس کے لیے order.transactions کو 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

شاپ ویری ایبلز

شاپ ویری ایبل
لیگیسی 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 ایپ میں ویری ایبل
datecreated_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 فیلڈ استعمال کریں۔ ادائیگی کے طریقوں کو اب مخصوص اقسام میں زمرہ بند نہیں کیا جاتا، جیسے کہ {credit card, debit card, bank transfer}۔ پرانی Order Printer ایپ فی الحال کام کرنے والے پیمنٹ گیٹ ویز کے صرف ایک چھوٹے حصے کو ان زمروں پر میپ کرتی تھی۔ پیمنٹ گیٹ وے فراہم کنندگان اپنی طرف سے کسٹمرز کے ذریعے استعمال کیے جانے والے ادائیگی کے طریقوں کی اقسام کا نظم کرتے ہیں۔