Liquid kullanarak Shopify Messaging kampanyalarınızı özelleştirme

Liquid, Shopify'ın basit, kullanımı kolay programlama dilidir ve Shopify Theme Store'daki temaların oluşturulduğu programlama diliyle aynıdır.

Özel Liquid kullanarak, tamamen özel kodlanmış bir e-posta oluşturup veya bir şablona özel bir Liquid bölümü ekleyip Shopify Messaging mesajlarınızı geliştirebilirsiniz. Bu seçenekler, özel Liquid veya HTML girmenize olanak tanır.

Yan yana görseller, özel düğmeler, özel boyutlu görseller ve özel bölüm boyutları gibi özel varlıkları görüntülemek için özel Liquid kullanabilirsiniz.

Dikkat edilmesi gerekenler

Shopify Messaging mesajlarınıza özel Liquid eklemeye başlamadan önce aşağıdaki hususları gözden geçirin:

  • Kodunuza eklediğiniz değişkenlerin özel Liquid tarafından desteklenmesi gerekir.
  • Özel bir Liquid bölümü oluşturmak için yalnızca masaüstü cihaz kullanabilirsiniz.
  • unsubscribe_link veya unsubscribe_url değişkeni, özel Liquid e-postalarında zorunludur. Açılış takibini etkinleştirdiyseniz open_tracking değişkeni de zorunludur. E-postanıza gerekli değişkenleri ekleme hakkında daha fazla bilgi edinin.
  • Girdiğiniz kodun aşağıdaki sınırlamaları vardır:
    • Özel Liquid bölümleri için en fazla 50 kilobayt (KB).
    • Özel kodlanmış Liquid e-postaları için en fazla 500 KB.

Liquid ile özel kodlanmış e-posta oluşturma

Bir e-posta oluştururken özel Liquid kodu kullanmak istiyorsanız özel bir Liquid bölümü ekleyebilir veya bir Shopify Messaging kampanyası oluştururken Kendin kodla'yı seçerek tamamen özel Liquid kodundan oluşan bir e-posta oluşturabilirsiniz.

Özel Liquid'de desteklenen Liquid değişkenleri

Desteklenen değişkenleri kullanarak Shopify Messaging e-posta mesajlarınızı Liquid ile özelleştirebilirsiniz. Aşağıdaki şablon türleri için desteklenen Liquid değişkenlerinin listelerini inceleyebilirsiniz:

Tüm e-posta şablonları için desteklenen Liquid değişkenleri

Aşağıdaki değişkenleri kullanarak Shopify Messaging e-posta mesajlarınızdan herhangi birini Liquid ile özelleştirebilirsiniz.

Shopify Messaging tarafından desteklenen Liquid değişkenlerinin açıklaması
DeğişkenAçıklama
all_products
Mağazanızdaki tüm ürünler.
customer.accepts_marketing
Müşteri pazarlamayı kabul ederse true, etmezse false değerini döndürür.
customer.addresses
Müşterinin tüm adreslerini döndürür.
customer.addresses_count
Müşterinin adres sayısını döndürür.
customer.b2b?
Müşteri bir B2B müşterisi ise true, değilse false değerini döndürür.
customer.current_location
Müşterinin o anda seçili olan şirket konumunu döndürür.
customer.default_address
Müşterinin varsayılan adresini döndürür.
customer.email
Müşterinin e-posta adresini döndürür.
customer.first_name
Müşterinin adını döndürür.
customer.has_account
Müşterinin e-postası bir müşteri hesabıyla ilişkiliyse true, değilse false değerini döndürür.
customer.has_avatar?
Müşterinin hesabıyla ilişkilendirilmiş bir avatarı varsa true, yoksa false değerini döndürür.
customer.id
Müşterinin kimliğini döndürür.
customer.last_name
Müşterinin soyadını döndürür.
customer.last_order
Test siparişleri hariç, müşterinin verdiği son siparişi döndürür.
customer.name
Müşterinin tam adını döndürür.
customer.orders
Müşterinin verdiği tüm siparişleri döndürür.
customer.orders_count
Müşterinin verdiği toplam sipariş sayısını döndürür.
customer.payment_methods
Müşterinin kayıtlı ödeme yöntemlerini döndürür.
customer.phone
Müşterinin telefon numarasını döndürür. Telefon numarası yalnızca müşteri ödeme sırasında telefon numarası kullandıysa, SMS bildirimlerini etkinleştirdiyse veya numarayı müşteri hesabına manuel olarak eklediyseniz gösterilir.
customer.store_credit_account.balance

İlgili bağlamla ilişkili para biriminde müşterilerin mağaza kredisi bakiyesini döndürür. Örneğin:

{{customer.store_credit_account.balance | money_with_currency}}
customer.tags
Müşteriyle ilişkilendirilen etiketleri döndürür.
customer.tax_exempt
Müşteri vergiden muafsa true, değilse false değerini döndürür.
customer.total_spent
Müşterinin mağazanızdaki tüm siparişler için harcadığı toplam tutarı döndürür.
email.*

Bu değişken, aşağıdaki e-posta özelliklerine erişim sağlar:

  • subject, e-postanın konu satırını gösterir.
  • preview_text, e-postanın önizleme metnini gösterir.
  • open_tracking
    Bu değişken, önceden biçimlendirilmiş açılış takibi bloğuna erişim sağlar. Özel kodlanmış bir e-posta oluşturduysanız ve açılış takibini etkinleştirdiyseniz bu değişken gereklidir.
    shop.*
    Bu değişken, aşağıdaki mağaza özelliklerine erişim sağlar:
  • name, mağaza adını gösterir.
  • domain, mağazanın birincil alan adını gösterir.
  • url, mağaza URL'sini gösterir.
  • shopify_domain, mağazanın Shopify alan adını gösterir.
    • adres mağaza adresini gösterir. Bu özellik aşağıdaki adres özelliklerine erişim sağlar:
      • address1
      • address2
      • city
      • country
      • phone
      • province
      • zip
    unsubscribe_url
    Bu değişken, ham abonelikten çıkma URL'sine erişim sağlar ve özelleştirilebilir. Özel kodlanmış bir e-posta oluşturursanız unsubscribe_url veya unsubscribe_link değişkenini eklemeniz gerekir. Hem unsubscribe_url hem de unsubscribe_link, her zaman birincil online mağaza alan adına yönlendirir ve başka bir yere yönlendirmek üzere değiştirilemez.

    Yarım bırakılmış ödeme e-postaları için desteklenen Liquid değişkenleri

    Yarım bırakılmış ödeme için Shopify Messaging e-posta mesajlarınızı Liquid ile özelleştirmek üzere aşağıdaki değişkenleri kullanabilirsiniz.

    abandoned_checkout değişkeni yalnızca bir e-posta, yarım bırakılmış ödeme pazarlama otomasyonunun parçasıysa doldurulur. Aksi takdirde değişken null olur.

    Yarım bırakılmış göz atma, sepet ve ödeme için Shopify Messaging destekli Liquid değişkenlerinin açıklaması
    DeğişkenAçıklama
    abandoned_checkout.*

    Bu değişken, yarım bırakılmış bir ödemenin aşağıdaki özelliklerine erişim sağlar:

    • url, yarım bırakılmış ödemenin URL'sini gösterir.
    • line_items yarım bırakılmış ödemenin ilk beş satır öğesini gösterir. Ayrıca her bir line_items nesnesi, her bir ürünle ilgili aşağıdaki özellikleri içerir:
      • components
      • image_url
      • product_title
      • variant_title
      • quantity
    • line_items.components yarım bırakılmış ödemenin bileşenlerini gösterir. Ayrıca, her bir components nesnesi, her bir bileşenle ilgili aşağıdaki özellikleri içerir:
      • image_url
      • quantity
      • product_title
      • variant_title
    • remaining_products_count, yarım bırakılmış ödemede beşten fazla satır öğesi varsa kalan satır öğesi sayısını gösterir.
    id
    (checkout ID)
    Dahili kullanım için ödemenin benzersiz kimliği.
    shop
    Shopify mağazanızın adı.
    name
    Ödeme numarası olarak da bilinen, yarım bırakılmış ödemenin adı.
    total_price
    Siparişin toplam fiyatı (alt toplam + kargo masrafı - kargo indirimi + vergi).
    shipping_price

    Kargo ücreti.

    Örnek: {{ shipping_price | money }}

    shipping_address
    Kargo adresi.
    billing_address
    Fatura adresi.
    line_items
    Yarım bırakılmış ödemedeki tüm satır öğelerinin listesi.
    unavailable_line_items
    Yarım bırakılmış ödemede mevcut olmayan tüm satır öğelerinin listesi.
    note
    Yarım bırakılmış ödemeye eklenen not.
    landing_site

    Müşterinin kullandığı açılış sitesinin yolu. Bu, müşterinin mağazaya ulaştığında eriştiği ilk sayfadır.

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

    landing_site_ref

    Açılış sitesinden bir referans parametresi ayıklar. Referans parametreleri şunlar olabilir: ref, source, r.

    landing_site, /products/great-product?ref=my-tracking-token ise landing_site_ref my-tracking-token olur. Referans parametreniz belirli bir değere eşitse belirli bir işlemi gerçekleştirebilirsiniz:

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

    Müşteriyi mağazanıza getiren yönlendirenin URL'si.

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

    created_at

    Müşterinin, yarım bıraktığı ödemeyi oluşturduğu tarih ve saat.

    closed_at

    Ödemenin kapatıldığı tarih ve saat.

    customer_locale
    Müşterinin yerel ayarı için isteğe bağlı olarak bölge değiştiricinin takip ettiği iki veya üç harfli dil kodu. Örneğin,
    en
    ,
    en-CA
    item_count
    Tüm ürünlerin adetlerinin toplamı.
    unique_gateways
    Ödeme sayfasında mevcut olan benzersiz ödeme sağlayıcılarının listesi.
    discount
    Yarım bırakılmış ödemedeki sepete veya bir satır öğesine uygulanan indirim.
    discounts
    Ödeme sayfasına uygulanan indirimlerin bir listesi.
    successfully_applied_discounts
    Ödeme sayfasına başarıyla uygulanan indirimler.
    discounts_amount

    Uygulanan tüm indirimlerin toplam para tutarı.

    Örnek: +5,00 $

    discounts_savings

    Tüm indirimlerin sağladığı tasarrufun para tutarı.

    Örnek: -5,00 $

    buyer_accepts_marketing
    Döndürür
    true
    veya
    false
    müşterinin yarım bırakılmış ödeme sırasında pazarlamayı kabul edip etmemesine bağlı olarak.
    subtotal_line_items
    Herhangi bir bahşiş satır öğesi hariç olmak üzere, ödeme sayfasındaki alt toplam fiyatını hesaplamak için kullanılan satır öğeleri.
    requires_shipping
    Döndürür
    true
    ödeme sayfasında kargo gerektiren en az bir ürün varsa.
    subtotal_price
    Ödeme sayfasındaki satır öğelerinin alt toplam fiyatı.
    email
    Yarım bırakılmış ödeme ile ilişkili e-posta.
    shop_name
    Mağazanızın adı.
    tax_lines

    Vergi türüne göre ayrılmış vergiler:

    {% for tax_line in tax_lines %}
    {{ tax_line.title }} ({{ tax_line.rate_percentage }}%) : {{ tax_line.price | money_with_currency  }}
    {% endfor %}
    tax_price
    Ödeme sayfasındaki tüm ürünlerin birleştirilmiş vergileri.
    attributes

    Yarım bırakılmış ödemeye eklenmiş olan tüm özellikler.

    Örnek: {{ attributes.gift-note }}

    shipping_method
    Ödeme sayfasında mevcut olan ilk kargo yöntemi hakkındaki bilgiler.
    shipping_methods
    Ödeme sayfasında mevcut olan kargo yöntemleri.
    free
    Döndürür
    true if the total price of the checkout is zero.
    free_shipping
    Döndürür
    true
    ödeme sayfası kargo gerektirmiyorsa veya kargo ücreti sıfırsa.
    different_billing_address
    Döndürür
    true
    veya
    false
    kargo adresinin fatura adresiyle aynı olup olmamasına göre.
    customer
    Müşteri çıktısının özelliklerini içeren müşteri nesnesi.
    gift_cards
    Ödeme sayfasına uygulanan hediye kartları.
    gift_cards_amount
    Ödeme fiyatının hediye kartları ile ödenecek olan tutarı.
    transactions
    Ödeme sayfasının işlemleri.
    shareable_url
    Satır öğelerindeki ilk ürünün URL'si.
    shareable_title
    İlk satır öğesinin ürün başlığı.
    total_tip
    Müşterinin ödeme sırasında eklediği toplam bahşiş.
    discount_applications
    Ödeme sayfasında bir ürüne neden ve nasıl indirim uygulandığını açıklar.
    cart_level_discount_applications
    Sepet için sepete özel indirim uygulamaları.
    currency
    Yarım bırakılmış ödemenin para birimi.
    line_items_subtotal_price
    Varsa satır öğesi indirimleri uygulandıktan sonra, ödeme sayfasındaki tüm satır öğelerinin fiyatları toplamı.

    Yarım bırakılmış göz atma ve yarım bırakılmış sepet e-postaları için Liquid değişkenleri

    abandoned_visit.* değişkeni yalnızca bir e-posta, yarım bırakılmış sepet veya yarım bırakılmış ürün gezintisi pazarlama otomasyonunun parçası olduğunda doldurulur. Bu değişkenin erişim sağladığı aşağıdaki özellikleri inceleyin.

    Shopify Messaging tarafından desteklenen Liquid değişkenlerinin açıklaması
    DeğişkenAçıklama
    abandoned_visit.*

    Bu değişken, yarım bırakılmış bir sepetin veya göz atmanın aşağıdaki özelliklerine erişim sağlar:

    • url, yarım bırakılmış sepetin veya göz atmanın URL'sini görüntüler.
    • products_added_to_cart , yarım bırakılan ziyarette sepete eklenen ilk beş ürün satır öğesini görüntüler. Ayrıca her bir products_added_to_cart nesnesi her bir ürün hakkında aşağıdaki özellikleri içerir:
      • title
      • image_url
      • variant_title
      • quantity
    • products_viewed , yarım bırakılan ziyaret sırasında görüntülenen ilk beş ürünü görüntüler. Ayrıca her bir products_viewed nesnesi her bir ürün hakkında aşağıdaki özellikleri içerir:
      • title
      • description
      • image_url
      • url
      • image_alt_text
    • remaining_cart_products_count, yarım bırakılmış ödemede beşten fazla satır öğesi varsa kalan satır öğesi sayısını görüntüler.

    Gerekli değişkenleri kullanma

    Özel bir Liquid e-postası oluşturduğunuzda unsubscribe_link veya unsubscribe_url değişkeni zorunludur. Açılış takibini etkinleştirdiyseniz open_tracking değişkeni de zorunludur.

    Bu değişkenler e-postanızın kodunda herhangi bir yere eklenebilse de bunların eklendiği en yaygın yer, aşağıdaki örnekte olduğu gibi e-postanın altbilgi bölümüdür:

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

    Özel Liquid kodu örneği

    Kod düzenleyiciye özel Liquid veya HTML'nizi ekleyebilirsiniz. Aşağıdaki kod, bir e-posta mesajında mağaza adınızı, özel bir düğmeyi ve özel boyutlu bir görseli görüntülemek için Liquid kodunu nasıl ekleyebileceğinize dair bir örnektir.

    <!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>