Anpassa dina Shopify Messaging-kampanjer med Liquid

Liquid är Shopifys enkla, lättanvända programmeringsspråk och är samma programmeringsspråk som teman från Shopify Theme Store är byggda med.

Du kan använda anpassad Liquid för att förbättra dina Shopify Messaging-meddelanden genom att skapa ett helt anpassat kodat e-postmeddelande eller genom att lägga till ett anpassat Liquid-avsnitt i en mall. Dessa alternativ låter dig mata in anpassad Liquid eller HTML.

Du kan använda anpassad Liquid för att visa anpassade tillgångar såsom bilder sida vid sida, anpassade knappar, bilder med anpassad storlek och anpassade avsnittsstorlekar.

Att tänka på

Granska följande punkter innan du börjar lägga till anpassad Liquid i dina Shopify Messaging-meddelanden:

  • Variablerna som du inkluderar i din kod måste stödjas av anpassad Liquid.
  • Du kan endast använda en stationär dator för att skapa ett anpassat Liquid-avsnitt.
  • Variabeln unsubscribe_link eller unsubscribe_url är obligatorisk i anpassade Liquid-e-postmeddelanden. Om du har aktiverat öppen spårning är även variabeln open_tracking obligatorisk. Läs mer om att lägga till obligatoriska variabler i ditt e-postmeddelande.
  • Koden som du anger har följande begränsningar:
    • Högst 50 kilobyte (kb) för anpassade Liquid-avsnitt.
    • Högst 500 kb för anpassade kodade Liquid-e-postmeddelanden.

Skapa ett anpassat kodat e-postmeddelande med Liquid

Om du vill använda anpassad Liquid-kod när du skapar ett e-postmeddelande kan du antingen lägga till ett anpassat Liquid-avsnitt eller skapa ett e-postmeddelande helt från anpassad Liquid-kod genom att välja Koda din egen när du skapar en Shopify Messaging-kampanj.

Liquid-variabler som stöds i anpassad Liquid

Du kan använda variabler som stöds för att anpassa dina e-postmeddelanden i Shopify Messaging med Liquid. Du kan granska listorna över Liquid-variabler som stöds för följande typer av mallar:

Liquid-variabler som stöds för alla e-postmallar

Du kan använda följande variabler för att anpassa alla dina e-postmeddelanden i Shopify Messaging med Liquid.

Beskrivning av Liquid-variabler som stöds av Shopify Messaging
VariabelBeskrivning
all_products
Returnerar alla produkter i din butik.
customer.accepts_marketing
Returnerar true om kunden godkänner marknadsföring och false om inte.
customer.addresses
Returnerar alla adresser som är kopplade till kunden.
customer.addresses_count
Returnerar antalet adresser som är kopplade till kunden.
customer.b2b?
Returnerar true om kunden är en B2B-kund, och false om inte.
customer.current_location
Returnerar den för närvarande valda företagsplatsen för kunden.
customer.default_address
Returnerar kundens standardadress.
customer.email
Returnerar kundens e-postadress.
customer.first_name
Returnerar kundens förnamn.
customer.has_account
Returnerar true om kundens e-postadress är kopplad till ett kundkonto och false om inte.
customer.has_avatar?
Returnerar true om kunden har en avatar kopplad till sitt konto och returnerar false om inte.
customer.id
Returnerar kundens ID.
customer.last_name
Returnerar kundens efternamn.
customer.last_order
Returnerar den senaste ordern som kunden har lagt, exklusive testordrar.
customer.name
Returnerar kundens fullständiga namn.
customer.orders
Returnerar alla ordrar som kunden har lagt.
customer.orders_count
Returnerar det totala antalet ordrar som kunden har lagt.
customer.payment_methods
Returnerar kundens sparade betalningsmetoder.
customer.phone
Returnerar kundens telefonnummer. Telefonnumret fylls endast i om kunden använde ett telefonnummer i kassan, har valt att ta emot SMS-aviseringar eller om du manuellt har lagt till det på kundens kundkonto.
customer.store_credit_account.balance

Returnerar kundens värdecheckssaldo i den valuta som är associerad med relevant kontext. Exempel:

{{customer.store_credit_account.balance | money_with_currency}}
customer.tags
Returnerar de taggar som är kopplade till kunden.
customer.tax_exempt
Returnerar true om kunden är undantagen från skatt, och returnerar false om inte.
customer.total_spent
Returnerar det totala belopp som kunden har spenderat på alla ordrar från din butik.
email.*

Denna variabel ger åtkomst till följande e-postegenskaper:

  • subject visar ämnesraden för e-postmeddelandet.
  • preview_text visar förhandsgranskningstexten för e-postmeddelandet.
  • open_tracking
    Denna variabel ger åtkomst till det förformaterade öppen spårning-blocket. Variabeln krävs om du skapar ett anpassat kodat e-postmeddelande och har aktiverat öppen spårning.
    shop.*
    Denna variabel ger åtkomst till följande butiksegenskaper:
  • name visar butiksnamnet.
  • domain visar butikens huvuddomän.
  • url visar butikens URL.
  • shopify_domain visar butikens Shopify-domän.
    • adress visar butiksadressen, vilket ger åtkomst till följande adressegenskaper:
      • address1
      • address2
      • city
      • country
      • phone
      • province
      • zip
    unsubscribe_url
    Denna variabel ger åtkomst till den obearbetade webbadressen för avprenumeration och kan anpassas. Om du skapar ett anpassat kodat e-postmeddelande måste du inkludera variabeln unsubscribe_url eller unsubscribe_link. Både unsubscribe_url och unsubscribe_link kommer alltid att peka på webbshopens huvuddomän och kan inte ändras för att dirigera någon annanstans.

    Liquid-variabler som stöds för e-postmeddelanden om övergiven kassa

    Du kan använda följande variabler för att anpassa dina e-postmeddelanden om övergiven kassa i Shopify Messaging med Liquid.

    Variabeln abandoned_checkout fylls endast i om ett e-postmeddelande är en del av en marknadsföringsautomation för övergiven kassa. I annat fall är variabeln null.

    Beskrivning av Liquid-variabler som stöds av Shopify Messaging för övergiven bläddring, varukorg och kassa
    VariabelBeskrivning
    abandoned_checkout.*

    Denna variabel ger åtkomst till följande egenskaper för en övergiven kassa:

    • url visar URL:en för den övergivna kassan.
    • poster visar de fem första posterna i den övergivna kassan. Dessutom har varje poster objekt följande egenskaper för varje produkt:
      • components
      • image_url
      • product_title
      • variant_title
      • quantity
    • line_items.components visar komponenterna i den övergivna kassan. För varje uppsättning komponenter innehåller objektet följande egenskaper för varje komponent:
      • image_url
      • quantity
      • product_title
      • variant_title
    • remaining_products_count visar antalet återstående poster om det finns fler än fem poster i den övergivna kassan.
    id
    (checkout ID)
    Ett unikt ID för kassan för internt bruk.
    shop
    Ditt Shopify-butiksnamn.
    name
    Namnet på den övergivna kassan, även kallat kassanumret.
    total_price
    Orderns totalpris (delsumma + fraktkostnad - fraktrabatt + skatt).
    shipping_price

    Fraktpriset.

    Exempel: {{ shipping_price | money }}

    shipping_address
    Leveransadressen.
    billing_address
    Faktureringsadressen.
    line_items
    En lista över alla poster i den övergivna kassan.
    unavailable_line_items
    En lista över alla poster i den övergivna kassan som inte är tillgängliga.
    note
    Anteckningen som är bifogad till den övergivna kassan.
    landing_site

    Sökvägen till landningssidan som kunden använde. Detta är den första sidan som kunden besökte när hen kom till butiken.

    Exempel: /products/great-product?ref=my-tracking-token

    landing_site_ref

    Extraherar en referensparameter från landningssidan. Referensparametrar kan vara: ref, source, r.

    Om landing_site är /products/great-product?ref=my-tracking-token, är landing_site_ref my-tracking-token. Du kan utföra en viss åtgärd om din referensparameter är lika med ett visst värde:

    {% if landing_site_ref == 'my-tracking-token' %}
    My action...
    {% endif %}
    referring_site

    Webbadressen till den referent som ledde kunden till din butik.

    Exempel: https://www.google.com/?s=great+products

    created_at

    Datum och tid då kunden skapade kassan som hen sedan övergav.

    closed_at

    Datum och tid då kassan stängdes.

    customer_locale
    Den två- eller treställiga språkkoden för kundens plats, valfritt följt av en regionmodifierare. Till exempel,
    en
    ,
    en-CA
    item_count
    Summan av alla artiklars antal.
    unique_gateways
    En lista över unika betalningsleverantörer som är tillgängliga i kassan.
    discount
    Rabatten som tillämpas på varukorgen eller en post i den övergivna betalningen.
    discounts
    En lista över rabatter som tillämpas i kassan.
    successfully_applied_discounts
    De rabatter som har tillämpats i kassan.
    discounts_amount

    Rabattbeloppet i dollar från alla tillämpade rabatter.

    Exempel: +5,00 $

    discounts_savings

    Besparingen i dollar från alla rabatter.

    Exempel: -5,00 $

    buyer_accepts_marketing
    Returnerar
    true
    eller
    false
    beroende på om kunden godkände marknadsföring under den övergivna betalningen.
    subtotal_line_items
    De poster som används för att beräkna delsumman i kassan, exklusive eventuella dricksposter.
    requires_shipping
    Returnerar
    true
    om det finns minst en artikel i kassan som kräver frakt.
    subtotal_price
    Delsumman för posterna i kassan.
    email
    E-postadressen som är kopplad till den övergivna betalningen.
    shop_name
    Butikens namn.
    tax_lines

    Skatterna uppdelade per skattetyp:

    {% for tax_line in tax_lines %}
    {{ tax_line.title }} ({{ tax_line.rate_percentage }}%) : {{ tax_line.price | money_with_currency  }}
    {% endfor %}
    tax_price
    Den totala skatten för alla artiklar i kassan.
    attributes

    Eventuella attribut som bifogades den övergivna betalningen.

    Exempel: {{ attributes.gift-note }}

    shipping_method
    Information om den första tillgängliga leveransmetoden i kassan.
    shipping_methods
    De leveransmetoder som är tillgängliga i kassan.
    free
    Returnerar
    true if the total price of the checkout is zero.
    free_shipping
    Returnerar
    true
    om kassan inte kräver frakt, eller om fraktpriset är noll.
    different_billing_address
    Returnerar
    true
    eller
    false
    beroende på om leveransadressen är densamma som faktureringsadressen.
    customer
    Kundobjektet som innehåller attributen för kundens utdata.
    gift_cards
    De presentkort som tillämpas i kassan.
    gift_cards_amount
    Den del av kassabeloppet som skulle betalas med presentkort.
    transactions
    Transaktionerna i kassan.
    shareable_url
    URL:en för den första produkten bland posterna.
    shareable_title
    Produktnamnet för den första posten.
    total_tip
    Den totala dricks som kunden lade till i kassan.
    discount_applications
    Beskriver varför och hur en artikel rabatterades i kassan.
    cart_level_discount_applications
    De rabatter som tillämpas specifikt på varukorgen.
    currency
    Valutan för den övergivna betalningen.
    line_items_subtotal_price
    Summan av priserna för alla poster i kassan, efter att eventuella postrabatter har tillämpats.

    Liquid-variabler för e-postmeddelanden om övergiven bläddring och övergiven varukorg

    Variabeln abandoned_visit.* fylls endast i om ett e-postmeddelande ingår i en marknadsföringsautomatisering för övergiven varukorg eller övergiven produktbläddring. Granska följande egenskaper som denna variabel ger åtkomst till.

    Beskrivning av Liquid-variabler som stöds av Shopify Messaging
    VariabelBeskrivning
    abandoned_visit.*

    Den här variabeln ger åtkomst till följande egenskaper för en övergiven varukorg eller bläddring:

    • url visar URL:en för den övergivna varukorgen eller bläddringen.
    • products_added_to_cart visar de första fem produktposterna som lagts till i varukorgen under det övergivna besöket. Dessutom, varje products_added_to_cart objekt innehåller följande egenskaper för varje produkt:
      • title
      • image_url
      • variant_title
      • quantity
    • products_viewed visar de första fem produkterna som visades under det övergivna besöket. Dessutom, varje products_viewed objekt innehåller följande egenskaper för varje produkt:
      • title
      • description
      • image_url
      • url
      • image_alt_text
    • remaining_cart_products_count visar antalet återstående poster om det finns fler än fem poster i den övergivna betalningen.

    Använda obligatoriska variabler

    När du skapar ett anpassat Liquid-e-postmeddelande krävs variabeln unsubscribe_link eller unsubscribe_url. Om du har aktiverat öppen spårning krävs även variabeln open_tracking.

    Även om dessa variabler kan infogas var som helst i koden för ditt e-postmeddelande, är det vanligaste stället att lägga till dem i e-postmeddelandets sidfot, som i följande exempel:

    <div id="footer">{{ unsubscribe_link }} {{ open_tracking_block }}</div>

    Exempel på anpassad Liquid-kod

    Du kan lägga till din anpassade Liquid- eller HTML-kod i kodredigeraren. Följande kod är ett exempel på hur du kan lägga till Liquid-kod för att visa ditt butiksnamn, en anpassad knapp och en bild i anpassad storlek i ett e-postmeddelande.

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>{{ shop.name }} Newsletter</title>
    </head>
    <body style="margin: 0; padding: 0; font-family: Arial, sans-serif; line-height: 1.5; color: #333333; background-color: #f5f5f5;">
        <table cellpadding="0" cellspacing="0" border="0" width="100%" style="background-color: #f5f5f5;">
            <tr>
                <td align="center" style="padding: 20px;">
                    <table cellpadding="0" cellspacing="0" border="0" width="600" style="background-color: #ffffff; border-radius: 4px; box-shadow: 0 2px 4px rgba(0,0,0,0.1);">
                        <!-- Header -->
                        <tr>
                            <td align="center" style="background-color: #4a6de5; padding: 30px 20px; color: #ffffff;">
                                <h1 style="margin: 0; font-size: 28px; font-weight: bold;">{{ shop.name }}</h1>
                                <p style="margin: 10px 0 0; font-size: 16px;">Your Book Journey with Us</p>
                            </td>
                        </tr>
    
                        <!-- Content -->
                        <tr>
                            <td style="padding: 30px 20px;">
                                <!-- Greeting Section -->
                                <table cellpadding="0" cellspacing="0" border="0" width="100%" style="margin-bottom: 30px;">
                                    <tr>
                                        <td>
                                            <h2 style="margin: 0 0 15px; font-size: 22px; color: #222222;">Hello {{ customer.name }}!</h2>
                                            <p style="margin: 0 0 15px; font-size: 15px;">We hope this email finds you well. We noticed you're from {{ customer.default_address.city }}.</p>
                                            {% if customer.email %}
                                                <p style="margin: 0 0 15px; font-size: 15px;">Your registered email is: {{ customer.email }}</p>
                                            {% endif %}
                                        </td>
                                    </tr>
                                </table>
    
                                <!-- Reading Journey Section -->
                                <table cellpadding="0" cellspacing="0" border="0" width="100%" style="margin-bottom: 30px;">
                                    <tr>
                                        <td>
                                            <h2 style="margin: 0 0 15px; font-size: 20px; color: #4a6de5;">Your Reading Journey</h2>
                                            <p style="margin: 0 0 15px; font-size: 15px;">Thank you for being a loyal customer! Here's a snapshot of your journey:</p>
                                            <p style="margin: 0 0 15px; font-size: 15px;">You purchased {{ customer.orders_count }} books with us.</p>
                                            {% if customer.last_order %}
                                                <p style="margin: 0 0 15px; font-size: 15px;"> You last read {{customer.last_order.line_items[0].title}}. Great choice! </p>
                                              {% endif %}
                                        </td>
                                    </tr>
                                </table>
    
                                <!-- Recommended Books Section -->
                                <table cellpadding="0" cellspacing="0" border="0" width="100%" style="margin-bottom: 30px;">
                                    <tr>
                                        <td>
                                            <h2 style="margin: 0 0 15px; font-size: 20px; color: #4a6de5;">Books You Might Love</h2>
                                            <p style="margin: 0 0 15px; font-size: 15px;">Based on your reading preferences, we've handpicked these titles just for you:</p>
    
                                            <table cellpadding="0" cellspacing="0" border="0" width="100%">
                                                <tr>
                                                    <td width="50%" style="padding-right: 10px;">
                                                        <table cellpadding="0" cellspacing="0" border="0" width="100%" style="background-color: #f9f9f9; border-radius: 4px; padding: 15px;">
                                                            <tr>
                                                                <td align="center">
                                                                    <!-- Image with proper email attributes -->
                                                                    <img src="https:{{ all_products['product-1-handle'] | image_url: width: 200 }}"
                                                                         alt="Product 1"
                                                                         width="200"
                                                                         height="200"
                                                                         style="display: block; border: 0; outline: none; text-decoration: none; -ms-interpolation-mode: bicubic;"
                                                                         title="Product 1"
                                                                         border="0">
                                                                    <h3 style="margin: 0 0 10px; font-size: 16px; color: #333333;">{{ all_products['product-1-handle'].title }}</h3>
                                                                    <p style="margin: 0 0 10px; font-size: 15px; color: #4a6de5;">${{ all_products['product-1-handle'].price }}</p>
                                                                    <a href="{{shop.domain}}{{ all_products['product-1-handle'].url }}" style="display: inline-block; background-color: #4a6de5; color: #ffffff; padding: 10px 20px; text-decoration: none; border-radius: 4px; font-size: 14px;">View Book</a>
                                                                </td>
                                                            </tr>
                                                        </table>
                                                    </td>
                                                    <td width="50%" style="padding-left: 10px;">
                                                        <table cellpadding="0" cellspacing="0" border="0" width="100%" style="background-color: #f9f9f9; border-radius: 4px; padding: 15px;">
                                                            <tr>
                                                                <td align="center">
                                                                    <!-- Image with proper email attributes -->
                                                                    <img src="https:{{ all_products['product-2-handle'] | image_url: width: 200 }}"
                                                                         alt="Product 2"
                                                                         width="200"
                                                                         height="200"
                                                                         style="display: block; border: 0; outline: none; text-decoration: none; -ms-interpolation-mode: bicubic;"
                                                                         title="Product 2"
                                                                         border="0">
                                                                    <h3 style="margin: 0 0 10px; font-size: 16px; color: #333333;">{{ all_products['product-2-handle'].title }}</h3>
                                                                    <p style="margin: 0 0 10px; font-size: 15px; color: #4a6de5;">${{ all_products['product-2-handle'].price }}</p>
                                                                    <a href="{{shop.domain}}{{ all_products['product-2-handle'].url }}" style="display: inline-block; background-color: #4a6de5; color: #ffffff; padding: 10px 20px; text-decoration: none; border-radius: 4px; font-size: 14px;">View Book</a>
                                                                </td>
                                                            </tr>
                                                        </table>
                                                    </td>
                                                </tr>
                                            </table>
                                        </td>
                                    </tr>
                                </table>
    
                                <!-- Book Club Section -->
                                <table cellpadding="0" cellspacing="0" border="0" width="100%" style="margin-bottom: 30px;">
                                    <tr>
                                        <td style="background-color: #f5f7ff; border-radius: 4px; padding: 25px; text-align: center;">
                                            <h2 style="margin: 0 0 15px; font-size: 18px; color: #333333;">This Month's Top Picks</h2>
                                            <p style="margin: 0 0 20px; font-size: 15px;">Discover what other readers are loving this month:</p>
                                            <a href="{{ shop.url }}/pages/book-club" style="display: inline-block; background-color: #4a6de5; color: #ffffff; padding: 10px 20px; text-decoration: none; border-radius: 4px; font-size: 14px;">Join Our Book Club</a>
                                        </td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
    
                        <!-- Footer -->
                        <tr>
                            <td style="background-color: #f2f2f2; padding: 30px 20px; text-align: center;">
                                <p style="margin: 0 0 15px; font-size: 15px;">Best regards,<br><strong>{{ shop.name }} Team</strong></p>
                                <p style="margin: 0 0 15px; font-size: 12px; color: #999999;">© {{ 'now' | date: '%Y' }} {{ shop.name }}. All rights reserved.</p>
                                <p style="margin: 0 0 15px; font-size: 12px;">{{ open_tracking_block }}</p>
                                <a href="{{ unsubscribe_url }}" style="color: #999999; font-size: 12px; text-decoration: underline;">{{ unsubscribe_link }}</a>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
        </table>
    </body>
    </html>