Yazdırılan makbuzlar için özel Liquid blokları
Yazdırılan bir makbuzun üstbilgisine veya altbilgisine sipariş ayrıntıları, müşteri bilgileri, ürün özellikleri, meta alanlar ve barkodlar gibi kendi içeriklerinizi eklemek için özel bir Liquid bloğu kullanabilirsiniz.
Özel Liquid blokları, tamamlanan online siparişler ve Point of Sale siparişleri için yazdırılan makbuzlarda oluşturulur. Offline ödeme kullanılan siparişler için oluşturulmazlar.
Shopify yöneticinizdeki makbuz görsel düzenleyicisinden özel bir Liquid bloğu ekleyebilirsiniz. Başvurduğunuz değerler, makbuz yazdırıldığında makbuz verilerinden çekilir. Örneğin, aşağıdaki Liquid kodu bir not mevcut olduğunda sipariş notunu makbuza ekler:
{% if order.note %}
<p>Order note: {{ order.note }}</p>
{% endif %}Bu sayfada
Liquid söz dizimi kuralları
Özel bir Liquid bloğu oluşturmadan önce aşağıdaki söz dizimi kurallarını inceleyin:
- Değişken adları küçük harfler ve alt çizgiler kullanır. Bu formata snake_case denir. Örneğin,
order.total_price,order.customer.display_nameveorder.line_itemskullanın. - Para değerleri düz sayılardır. Bunları
{{ order.total_price | money }}gibimoneyfiltresiyle biçimlendirin. - İsteğe bağlı değerleri
ififadesiyle koruma altına alarak boş bir satır yazdırmayı önleyin, örneğin:{% if order.customer.email %}{{ order.customer.email }}{% endif %}. forifadesiyle listeler üzerinde döngü oluşturun, örneğin:{% for item in order.line_items %} ... {% endfor %}.- Bazı Liquid etiketleri desteklenmez.
assign,capture,include,render,raw,incrementveyadecrementkullanamazsınız. Bloğunuz desteklenmeyen bir etiket kullanıyorsa makbuzunuz kaydedilmez ve bir hata görürsünüz. - Özel bir Liquid bloğu en fazla 50 KB kod içerebilir.
HTML ve CSS
İçeriğinizi yapılandırmak için özel bir Liquid bloğunda <p>, <br>, <strong>, <em>, başlıklar, listeler ve bağlantılar gibi temel HTML'leri kullanabilirsiniz. İçeriğiniz makbuzun mevcut yazı tiplerini ve boyutlarını kullanır.
Makbuzun görünümünü değiştirmek için CSS kullanamazsınız. <style> blokları ve style özellikleri desteklenmez, bu nedenle özel bir Liquid bloğu makbuzun başka bir yerindeki içeriğin stilini değiştiremez veya içeriği gizleyemez. <script> etiketleri, onclick gibi olay işleyicileri ve javascript: bağlantıları da desteklenmez.
Bloğunuz desteklenmeyen bir HTML içeriyorsa makbuzunuz kaydedilmez ve bir hata görürsünüz. Desteklenmeyen HTML'yi kaldırın ve tekrar kaydedin.
Değişkenler ve nesneler
Özel bir Liquid bloğu aşağıdaki nesnelere ve değişkenlere başvurabilir. Bazı değerler varsayılan makbuzda yer almaz, bunları eklemenin bir yolu özel bir Liquid bloğu kullanmaktır.
Üst düzey değişkenler
Aşağıdaki üst düzey değişkenler özel bir Liquid bloğunda kullanılabilir.
| Değişken | Açıklama |
|---|---|
order | Yazdırılan sipariş. |
shop | Mağaza. |
location | Perakende satış konumu. |
settings | Düzenleyicide yapılandırılan açma/kapatma düğmelerini içeren makbuz görünüm ayarları. |
purchased_gift_cards | Bu siparişte satın alınan hediye kartları. |
staff_member_description | Personel gösterimi açık olduğunda atfedilen personel. |
locale | Makbuz yerel ayarı, örneğin en. |
is_pickup | Siparişin bir teslim alım siparişi olup olmadığı. |
pickup_location | Geçerli olduğunda, teslim alım konumu. |
Sipariş nesnesi
| Özellik | Açıklama |
|---|---|
name | Sipariş adı, örneğin #1001. |
created_at |
Sipariş zaman damgası. date filtresi ile kullanın.
|
note | Sipariş notu. |
subtotal_price |
Alt toplam. money filtresi ile biçimlendirin.
|
total_price |
Toplam. money filtresi ile biçimlendirin.
|
shipping_price |
Tahsil edilen kargo ücreti. money filtresi ile biçimlendirin.
|
total_tip_received |
Bahşiş toplamı. money filtresi ile biçimlendirin.
|
balance_due |
Kalan tutar. money filtresi ile biçimlendirin.
|
change_due |
Verilen para üstü. money filtresi ile biçimlendirin.
|
taxes_included | Verginin fiyatlara dahil olup olmadığı. |
receipt_number | Makbuz numarası. |
barcode_content | Bir barkodda kodlanacak içerik. |
qr_code_content |
Bir QR kodunda kodlanacak içerik. qrcode filtresi ile kullanın.
|
line_items | Satın alınan öğeler. Her öğenin özellikleri sipariş satır öğesi nesnesi bölümünde listelenir. |
transactions | Ödemeler. Her bir ödemenin özellikleri işlem nesnesi bölümünde listelenir. |
discounts | Sipariş düzeyindeki indirimler. Her bir indirimin özellikleri indirim nesnesi bölümünde listelenir. |
tax_lines | Vergi satırları. Her bir vergi satırının özellikleri vergi satırı nesnesi bölümünde listelenir. |
refunds | Siparişteki para iadeleri. |
shipping_address | Kargo adresi. Adres özellikleri adres nesnesinde listelenir. |
customer | Müşteri nesnesinde listelenen müşteri bilgileri. |
metafields | Sipariş meta alanları. |
Müşteri nesnesi
order.customer nesnesi, müşterinin bilgilerini içerir.
| Özellik | Açıklama |
|---|---|
display_name | Müşterinin görünen adı. |
first_name | Müşterinin adı. |
last_name | Müşterinin soyadı. |
| Müşterinin e-posta adresi. | |
phone | Müşterinin telefon numarası. |
default_address | Müşterinin varsayılan adresi. |
metafields | Müşteri meta alanları. |
Sipariş satır öğesi nesnesi
Şu kısımdaki her bir öğe: order.line_items içindeki her bir öğe aşağıdaki özellikleri içerir.
| Özellik | Açıklama |
|---|---|
name | Ürün veya satır adı. |
variant_title | Büyük / Mavi gibi varyasyon. |
sku | SKU. |
vendor | Satıcı. |
quantity | Miktar. |
price |
Birim fiyatı. money filtresiyle biçimlendirin.
|
total_price |
Satır toplamı. money filtresiyle biçimlendirin.
|
discounted_total_price |
İndirimlerden sonraki satır toplamı. money filtresiyle biçimlendirin.
|
discounted_unit_price |
İndirimlerden sonraki birim başına fiyat. money filtresiyle biçimlendirin.
|
discounts | Satıra uygulanan indirimler. |
selling_plan_name | Varsa abonelik veya satış planı adı. |
staff_member_description | Satırla ilişkilendirilen personel. |
custom_attributes | Anahtar ile erişilen satır öğesi özellikleri. |
product_metafields | Anahtar ile erişilen ürün meta alanları. |
variant_metafields | Anahtar ile erişilen varyasyon meta alanları. |
İşlem nesnesi
Şu kısımdaki her bir ödeme: order.transactions içindeki her bir ödeme aşağıdaki özellikleri içerir. Siparişte harcanan mağaza kredisi, Mağaza kredisi adlı bir ödeme olarak listelenir. Müşterinin kalan mağaza kredisi bakiyesi, bir değişken olarak kullanılamaz.
| Özellik | Açıklama |
|---|---|
name | Visa, nakit veya mağaza kredisi gibi ödeme adı. |
payment_type | Ödeme türü kodu. |
amount |
Tutar. money filtresiyle biçimlendirin.
|
kind | İşlem türü. |
status | İşlem durumu. |
credit_card_number | Uygun olduğunda maskelenmiş kart numarası. |
created_at | İşlem zaman damgası. |
additional_details | Ek ödeme bilgisi satırları. |
Mağaza nesnesi
shop nesnesi, mağazanın bilgilerini içerir.
| Özellik | Açıklama |
|---|---|
name | Mağaza adı. |
domain | Mağaza alan adı. |
currency | Mağaza para birimi. |
id | Mağaza kimliği. |
Konum nesnesi
location nesnesi, perakende satış konumunun bilgilerini içerir.
| Özellik | Açıklama |
|---|---|
name | Konum adı. |
address1 | Birinci adres satırı. |
address2 | İkinci adres satırı. |
city | Şehir. |
province | İl veya eyalet. |
province_code | İl veya eyalet kodu. |
zip | Posta kodu. |
country | Ülke. |
phone | Telefon numarası. |
metafields | Konum meta alanları. |
Adres nesnesi
Örneğin order.shipping_address veya order.customer.default_addressgibi bir adres aşağıdaki özellikleri içerir.
| Özellik | Açıklama |
|---|---|
company | Şirket adı. |
name | Alıcının adı. |
address1 | Birinci adres satırı. |
address2 | İkinci adres satırı. |
city | Şehir. |
province | İl veya eyalet. |
province_code | İl veya eyalet kodu. |
zip | Posta kodu. |
country | Ülke. |
country_code | Ülke kodu. |
phone | Telefon numarası. |
İndirim nesnesi
Şu kısımdaki her bir indirim: order.discounts veya item.discounts içindeki her bir öğe aşağıdaki özellikleri içerir.
| Özellik | Açıklama |
|---|---|
description | İndirim açıklaması. |
amount | İndirim tutarı. money filtresiyle biçimlendirin. |
percentage | İndirim yüzdesi. |
Vergi satırı nesnesi
Şu kısımdaki her bir vergi satırı: order.tax_lines içindeki her bir öğe aşağıdaki özellikleri içerir.
| Özellik | Açıklama |
|---|---|
title | Vergi başlığı. |
rate | Ondalık sayı olarak vergi oranı. |
rate_percentage | Yüzde olarak vergi oranı. |
price | Vergi tutarı. money filtresiyle biçimlendirin. |
taxable_amount | Vergiye tabi tutar. money filtresiyle biçimlendirin. |
Hediye kartı nesnesi
Şu kısımdaki her bir hediye kartı: purchased_gift_cards içindeki her bir öğe aşağıdaki özellikleri içerir.
| Özellik | Açıklama |
|---|---|
code | Hediye kartı kodu. |
masked_code | Maskelenmiş hediye kartı kodu. |
balance | Hediye kartı bakiyesi. money filtresi ile biçimlendirin. |
created_at | Hediye kartı zaman damgası. |
qr_code_content | Bir QR kodunda kodlanacak içerik. |
Meta alanlar ve özellikler
Meta alanlar ve satır öğesi özellikleri iki şekilde gelir.
Satır öğesi meta alanları ve özellikleri anahtarlıdır. Bir değere doğrudan anahtarı üzerinden erişin:
{{ item.product_metafields.care_instructions }}
{{ item.custom_attributes.engraving }}Sipariş ve müşteri meta alanları listedir. Bunların üzerinde döngü oluşturun:
{% for m in order.metafields %}
{{ m.namespace }}.{{ m.key }}: {{ m.value }}
{% endfor %}Anahtarlar snake_case yapısına normalleştirilir. Care Instructions veya careInstructions gibi bir anahtara care_instructions şeklinde erişilir. Anahtarlı değerlere her zaman küçük harflerle ve alt çizgi ile başvurun.
Sipariş ve müşteri meta alanlarının kullanılabilirliği, söz konusu meta alanların kayıtta mevcut olmasına bağlıdır.
Liquid filtreleri
Özel Liquid bloğunuzdaki bilgileri biçimlendirmek için filtreleri kullanabilirsiniz. Bir filtre uygulamak için Liquid çıkışının içine dikey çizgi (|) ve ardından filtreyi ekleyin. Örneğin: {{ order.total_price | money }}.
Standart Liquid filtreleri de kullanılabilir. Liquid filtreleri hakkında daha fazla bilgi edinmek için Filtreler referansı bölümüne bakın.
| Filtre | Örnek | Açıklama |
|---|---|---|
money | {{ order.total_price | money }} | Tutarı, makbuz para birimine göre biçimlendirir. |
date | {{ order.created_at | date: '%B %e, %Y' }} | Tarihi veya saati biçimlendirir. |
percent | {{ tax_line.rate | percent }} | Ondalık bir sayıyı yüzde olarak biçimlendirir (ör. 0,2 değerini %20 olarak). |
t | {{ 'receipt.total' | t }} | Çevrilmiş bir etiket döndürür. |
barcode | {{ order.barcode_content | barcode }} | Barkod oluşturur. |
qrcode | {{ order.qr_code_content | qrcode }} | QR kodu oluşturur. |
Özel Liquid bloğu örnekleri
Aşağıdaki örnekler, varsayılan bir basılı makbuz şablonunda bulunmayan içerikler ekler.
Mevcut olduğunda sipariş notunu eklemek için aşağıdaki Liquid'i kullanın:
{% if order.note %}<p>Note: {{ order.note }}</p>{% endif %}Her ürünün yanına SKU eklemek için aşağıdaki Liquid'i kullanın:
{% for item in order.line_items %}
<p>{{ item.name }} — {{ item.sku }} ×{{ item.quantity }}</p>
{% endfor %}Oyma gibi bir satır öğesi özelliği eklemek için aşağıdaki Liquid'i kullanın:
{% for item in order.line_items %}
{% if item.custom_attributes.engraving %}
<p>{{ item.name }} — Engraving: {{ item.custom_attributes.engraving }}</p>
{% endif %}
{% endfor %}Bakım talimatları gibi bir ürün meta alanı eklemek için aşağıdaki Liquid'i kullanın:
{% for item in order.line_items %}
{% if item.product_metafields.care_instructions %}
<p>{{ item.name }}: {{ item.product_metafields.care_instructions }}</p>
{% endif %}
{% endfor %}Bir müşteri meta alanı eklemek için aşağıdaki Liquid'i kullanın:
{% for m in order.customer.metafields %}
{% if m.key == 'loyalty_tier' %}<p>Loyalty tier: {{ m.value }}</p>{% endif %}
{% endfor %}Siparişe bağlanan bir QR kodu eklemek için aşağıdaki Liquid'i kullanın:
{{ order.qr_code_content | qrcode }}