Tilpassede Liquid-blokke til trykte kvitteringer
Du kan bruge en tilpasset Liquid-blok til at tilføje dit eget indhold i sidehovedet eller sidefoden på en trykt kvittering. Dette kan f.eks. være ordreoplysninger, kundeoplysninger, produktegenskaber, metafelter og stregkoder.
Tilpassede Liquid-blokke vises på trykte kvitteringer for fuldførte onlineordrer og Point of Sale-ordrer. De vises ikke for ordrer, der bruger offline betaling.
Du kan tilføje en tilpasset Liquid-blok fra den visuelle editor til kvitteringer i din Shopify-administrator. De værdier, du henviser til, hentes fra kvitteringens data, når den udskrives. Følgende Liquid-kode tilføjer f.eks. ordrebemærkningen til kvitteringen, når der findes en bemærkning:
{% if order.note %}
<p>Order note: {{ order.note }}</p>
{% endif %}På denne side
Regler for Liquid-syntaks
Gennemgå følgende syntaksregler, før du opbygger en tilpasset Liquid-blok:
- Variabelnavne bruger små bogstaver og understregning, hvilket er et format, der kaldes snake_case. Brug f.eks.
order.total_price,order.customer.display_nameogorder.line_items. - Pengeværdier er almindelige tal. Formatér dem med
money-filteret, f.eks.{{ order.total_price | money }}. - Beskyt valgfrie værdier med en
if-sætning, så du ikke udskriver en tom linje, f.eks.{% if order.customer.email %}{{ order.customer.email }}{% endif %}. - Kør lister i loop med en
for-sætning, f.eks.{% for item in order.line_items %} ... {% endfor %}. - Nogle Liquid-tags understøttes ikke. Du kan ikke bruge
assign,capture,include,render,raw,incrementellerdecrement. Hvis din blok bruger et tag, der ikke understøttes, gemmes din kvittering ikke, og du får vist en fejlmeddelelse. - En tilpasset Liquid-blok kan indeholde op til 50 KB kode.
HTML og CSS
Du kan bruge grundlæggende HTML i en tilpasset Liquid-blok for at strukturere dit indhold. Dette kan f.eks. være <p>, <br>, <strong>, <em>, overskrifter, lister og links. Dit indhold bruger de eksisterende skrifttyper og størrelser fra kvitteringen.
Du kan ikke bruge CSS til at ændre kvitteringens udseende. <style>-blokke og style-attributter understøttes ikke, så en tilpasset Liquid-blok kan ikke ændre formatet på eller skjule indhold andre steder på kvitteringen. <script>-tags, hændelseshandlere, såsom onclick, og javascript:-links understøttes heller ikke.
Hvis din blok indeholder HTML, der ikke understøttes, gemmes din kvittering ikke, og du får vist en fejlmeddelelse. Fjern den HTML, der ikke understøttes, og gem igen.
Variabler og objekter
En tilpasset Liquid-blok kan henvise til følgende objekter og variabler. Nogle værdier findes ikke på standardkvitteringen, så en tilpasset Liquid-blok er én måde at tilføje dem på.
Variabler på øverste niveau
Følgende variabler på øverste niveau er tilgængelige i en tilpasset Liquid-blok.
| Variabel | Beskrivelse |
|---|---|
order | Den ordre, der udskrives. |
shop | Butikken. |
location | Detaillokationen. |
settings | Kvitteringens visningsindstillinger, hvilket er de knapper for at slå til/fra, der er konfigureret i editoren. |
purchased_gift_cards | De gavekort, der blev købt i denne ordre. |
staff_member_description | Den tilknyttede medarbejder, når visning af medarbejdere er slået til. |
locale | Kvitteringens landestandard, f.eks. da. |
is_pickup | Om ordren er til afhentning. |
pickup_location | Afhentningslokationen, hvor det er relevant. |
Ordreobjekt
| Egenskab | Beskrivelse |
|---|---|
name | Ordrenavnet, f.eks. #1001. |
created_at |
Tidsstemplet for ordren. Brug med date-filteret.
|
note | Ordrebemærkningen. |
subtotal_price |
Subtotalen. Formatér med money-filteret.
|
total_price |
Totalen. Formatér med money-filteret.
|
shipping_price |
Opkrævet pris for forsendelse. Formatér med money-filteret.
|
total_tip_received |
Totalen for drikkepenge. Formatér med money-filteret.
|
balance_due |
Det resterende skyldige beløb. Formatér med money-filteret.
|
change_due |
De udleverede byttepenge. Formatér med money-filteret.
|
taxes_included | Om skat er inkluderet i priserne. |
receipt_number | Kvitteringsnummeret. |
barcode_content | Det indhold, der skal kodes i en stregkode. |
qr_code_content |
Det indhold, der skal kodes i en QR-kode. Brug med qrcode-filteret.
|
line_items | De købte varer. Egenskaber for de enkelte varer er angivet i objektet for ordrevarelinje. |
transactions | Betalingerne. Egenskaber for de enkelte betalinger er angivet i transaktionsobjektet. |
discounts | Rabatterne på ordreniveau. Egenskaber for de enkelte rabatter er angivet i rabatobjektet. |
tax_lines | Skattevarelinjerne. Egenskaber for de enkelte skattevarelinjer er angivet i skattevarelinjeobjektet. |
refunds | Refusionerne for ordren. |
shipping_address | Leveringsadressen. Adresseegenskaber er angivet i adresseobjektet. |
customer | Kundens oplysninger, som er angivet i kundeobjektet. |
metafields | Ordrens metafelter. |
Kundeobjekt
Dette order.customer -objekt indeholder kundens oplysninger.
| Egenskab | Beskrivelse |
|---|---|
display_name | Kundens visningsnavn. |
first_name | Kundens fornavn. |
last_name | Kundens efternavn. |
| Kundens mailadresse. | |
phone | Kundens telefonnummer. |
default_address | Kundens standardadresse. |
metafields | Kundens metafelter. |
Objekt for ordrens varelinje
Hver vare i order.line_items indeholder følgende egenskaber.
| Egenskab | Beskrivelse |
|---|---|
name | Produktets eller linjens navn. |
variant_title | Varianten, f.eks. Large / Blå. |
sku | SKU'en. |
vendor | Forhandleren. |
quantity | Antallet. |
price |
Stykprisen. Formatér med filteret money.
|
total_price |
Linjetotalen. Formatér med filteret money.
|
discounted_total_price |
Linjetotalen efter rabatter. Formatér med filteret money.
|
discounted_unit_price |
Stykprisen efter rabatter. Formatér med filteret money.
|
discounts | De rabatter, der er anvendt på linjen. |
selling_plan_name | Navnet på et eventuelt abonnement eller en eventuel salgsplan. |
staff_member_description | Den medarbejder, der er knyttet til linjen. |
custom_attributes | Varelinjens egenskaber (tilgås via nøgle). |
product_metafields | Produktets metafelter (tilgås via nøgle). |
variant_metafields | Variantens metafelter (tilgås via nøgle). |
Transaktionsobjekt
Hver betaling i order.transactions indeholder følgende egenskaber. Tilgodebeviser, der er brugt på ordren, angives som en betaling med navnet Tilgodebevis. Kundens resterende saldo for tilgodebeviser er ikke tilgængelig som en variabel.
| Egenskab | Beskrivelse |
|---|---|
name | Navnet på betalingen, f.eks. Visa, kontant eller tilgodebevis. |
payment_type | Koden for betalingstypen. |
amount |
Beløbet. Formatér med filteret money.
|
kind | Transaktionstypen. |
status | Transaktionsstatussen. |
credit_card_number | Det maskerede kortnummer (når det er relevant). |
created_at | Transaktionens tidsstempel. |
additional_details | Ekstra linjer med betalingsoplysninger. |
Shop-objekt
Dette shop -objekt indeholder butikkens oplysninger.
| Egenskab | Beskrivelse |
|---|---|
name | Butikkens navn. |
domain | Butikkens domæne. |
currency | Butikkens valuta. |
id | Butikkens id. |
Lokationsobjekt
Dette location -objekt indeholder detaillokationens oplysninger.
| Egenskab | Beskrivelse |
|---|---|
name | Lokationens navn. |
address1 | Den første adresselinje. |
address2 | Den anden adresselinje. |
city | Byen. |
province | Området eller staten. |
province_code | Koden for området eller staten. |
zip | Postnummeret. |
country | Landet. |
phone | Telefonnummeret. |
metafields | Lokationens metafelter. |
Adresseobjekt
En adresse, f.eks. order.shipping_address eller order.customer.default_address, indeholder følgende egenskaber.
| Egenskab | Beskrivelse |
|---|---|
company | Firmanavnet. |
name | Modtagerens navn. |
address1 | Den første adresselinje. |
address2 | Den anden adresselinje. |
city | Byen. |
province | Området eller staten. |
province_code | Koden for området eller staten. |
zip | Postnummeret. |
country | Landet. |
country_code | Landekoden. |
phone | Telefonnummeret. |
Rabatobjekt
Hver rabat i order.discounts eller item.discounts indeholder følgende egenskaber.
| Egenskab | Beskrivelse |
|---|---|
description | Rabatbeskrivelsen. |
amount | Rabatbeløbet. Formatér med filteret money. |
percentage | Rabatprocenten. |
Skattelinjeobjekt
Hver skattelinje i order.tax_lines indeholder følgende egenskaber.
| Egenskab | Beskrivelse |
|---|---|
title | Skattens titel. |
rate | Skatteprocenten som en decimal. |
rate_percentage | Skatteprocenten som en procentdel. |
price | Skattebeløbet. Formatér med filteret money. |
taxable_amount | Det beløb, der skal betales skat af. Formatér med filteret money. |
Gavekortobjekt
Hvert gavekort i purchased_gift_cards indeholder følgende egenskaber.
| Egenskab | Beskrivelse |
|---|---|
code | Gavekortkoden. |
masked_code | Den maskerede gavekortkode. |
balance | Gavekortets saldo. Formater med filtret money. |
created_at | Gavekortets tidsstempel. |
qr_code_content | Det indhold, der skal kodes i en QR-kode. |
Metafelter og egenskaber
Metafelter og egenskaber for varelinjer findes i to former.
Metafelter og egenskaber for varelinjer er nøglebaserede. Få adgang til en værdi direkte via dens nøgle:
{{ item.product_metafields.care_instructions }}
{{ item.custom_attributes.engraving }}Ordre- og kundemetafelter er lister. Gennemløb dem:
{% for m in order.metafields %}
{{ m.namespace }}.{{ m.key }}: {{ m.value }}
{% endfor %}Nøgler normaliseres til snake_case. En nøgle såsom Care Instructions eller careInstructions tilgås som care_instructions. Henvis altid til nøglebaserede værdier med små bogstaver og understregning.
Tilgængeligheden af ordre- og kundemetafelter afhænger af, at disse metafelter findes på registreringen.
Liquid-filtre
Du kan bruge filtre til at formatere oplysningerne i din tilpassede Liquid-blok. For at anvende et filter skal du tilføje en lodret streg (pipe), |, og derefter filtret i Liquid-outputtet, som f.eks. {{ order.total_price | money }}.
Standard-Liquid-filtre fungerer også. Se referencevejledningen til filtre for at få flere oplysninger om Liquid-filtre.
| Filter | Eksempel | Beskrivelse |
|---|---|---|
money | {{ order.total_price | money }} | Formaterer et beløb i kvitteringens valuta. |
date | {{ order.created_at | date: '%B %e, %Y' }} | Formaterer en dato eller et klokkeslæt. |
percent | {{ tax_line.rate | percent }} | Formaterer et decimaltal som en procentdel, f.eks. 0,2 som 20 %. |
t | {{ 'receipt.total' | t }} | Returnerer en oversat label. |
barcode | {{ order.barcode_content | barcode }} | Gengiver en stregkode. |
qrcode | {{ order.qr_code_content | qrcode }} | Gengiver en QR-kode. |
Eksempler på tilpassede Liquid-blokke
Følgende eksempler tilføjer indhold, som ikke findes på en standardskabelon til trykte kvitteringer.
For at tilføje ordrebemærkningen, når der findes en, skal du bruge følgende Liquid:
{% if order.note %}<p>Note: {{ order.note }}</p>{% endif %}For at tilføje SKU'en ud for hver vare skal du bruge følgende Liquid:
{% for item in order.line_items %}
<p>{{ item.name }} — {{ item.sku }} ×{{ item.quantity }}</p>
{% endfor %}For at tilføje en egenskab for varelinje, f.eks. en gravering, skal du bruge følgende Liquid:
{% for item in order.line_items %}
{% if item.custom_attributes.engraving %}
<p>{{ item.name }} — Engraving: {{ item.custom_attributes.engraving }}</p>
{% endif %}
{% endfor %}For at tilføje et produktmetafelt, f.eks. vaskeanvisninger, skal du bruge følgende Liquid:
{% for item in order.line_items %}
{% if item.product_metafields.care_instructions %}
<p>{{ item.name }}: {{ item.product_metafields.care_instructions }}</p>
{% endif %}
{% endfor %}For at tilføje et kundemetafelt skal du bruge følgende Liquid:
{% for m in order.customer.metafields %}
{% if m.key == 'loyalty_tier' %}<p>Loyalty tier: {{ m.value }}</p>{% endif %}
{% endfor %}For at tilføje en QR-kode, som linker til ordren, skal du bruge følgende Liquid:
{{ order.qr_code_content | qrcode }}