Menyesuaikan kampanye Shopify Messaging Anda menggunakan Liquid

Liquid adalah bahasa pemrograman dari Shopify yang sederhana dan mudah digunakan, serta merupakan bahasa pemrograman yang sama dengan yang digunakan untuk membuat tema dari Shopify Theme Store.

Anda dapat menggunakan Liquid kustom untuk menyempurnakan pesan Shopify Messaging dengan membuat email yang sepenuhnya dikodekan secara kustom atau dengan menambahkan bagian Liquid kustom ke templat. Opsi ini memungkinkan Anda memasukkan Liquid atau HTML kustom.

Anda dapat menggunakan Liquid kustom untuk menampilkan aset kustom seperti gambar berdampingan, tombol kustom, gambar berukuran kustom, dan ukuran bagian kustom.

Pertimbangan

Tinjau pertimbangan berikut sebelum Anda mulai menambahkan Liquid kustom ke pesan Shopify Messaging:

  • Variabel yang Anda sertakan dalam kode harus didukung oleh Liquid kustom.
  • Anda hanya dapat menggunakan perangkat desktop untuk membuat bagian Liquid kustom.
  • Variabel unsubscribe_link atau unsubscribe_url wajib diisi dalam email Liquid kustom. Jika Anda telah mengaktifkan pelacakan dibuka, variabel open_tracking juga wajib diisi. Pelajari lebih lanjut tentang menambahkan variabel wajib diisi ke email Anda.
  • Kode yang Anda masukkan memiliki batas berikut:
    • Maksimal 50 kilobyte (KB) untuk bagian Liquid kustom.
    • Maksimal 500 KB untuk email Liquid yang dikodekan secara kustom.

Membuat email yang dikodekan secara kustom dengan Liquid

Jika ingin menggunakan kode Liquid kustom saat membuat email, Anda dapat menambahkan bagian Liquid kustom atau membuat email yang sepenuhnya dari kode Liquid kustom dengan memilih Buat kode sendiri saat Anda membuat kampanye Shopify Messaging.

Variabel Liquid yang didukung di Liquid kustom

Anda dapat menggunakan variabel yang didukung untuk menyesuaikan pesan email Shopify Messaging Anda dengan Liquid. Anda dapat meninjau daftar variabel Liquid yang didukung untuk jenis templat berikut:

Variabel Liquid yang didukung untuk semua templat email

Anda dapat menggunakan variabel berikut untuk menyesuaikan pesan email Shopify Messaging mana pun dengan Liquid.

Deskripsi variabel Liquid yang didukung Shopify Messaging
VariabelDeskripsi
all_products
Semua produk di toko Anda.
customer.accepts_marketing
Mengembalikan true jika pelanggan menyetujui pemasaran, dan mengembalikan false jika tidak.
customer.addresses
Mengembalikan semua alamat yang terkait dengan pelanggan.
customer.addresses_count
Mengembalikan jumlah alamat yang terkait dengan pelanggan.
customer.b2b?
Mengembalikan true jika pelanggan adalah pelanggan B2B, dan mengembalikan false jika tidak.
customer.current_location
Mengembalikan lokasi perusahaan yang saat ini dipilih untuk pelanggan.
customer.default_address
Mengembalikan alamat utama pelanggan.
customer.email
Mengembalikan alamat email pelanggan.
customer.first_name
Mengembalikan nama depan pelanggan.
customer.has_account
Mengembalikan true jika email pelanggan dikaitkan dengan akun pelanggan, dan mengembalikan false jika tidak.
customer.has_avatar?
Menghasilkan true jika pelanggan memiliki avatar yang terkait dengan akunnya, dan menghasilkan false jika tidak.
customer.id
Menghasilkan ID pelanggan.
customer.last_name
Menghasilkan nama belakang pelanggan.
customer.last_order
Menghasilkan pesanan terakhir yang dibuat oleh pelanggan, tidak termasuk pesanan uji coba.
customer.name
Menghasilkan nama lengkap pelanggan.
customer.orders
Menghasilkan semua pesanan yang telah dibuat oleh pelanggan.
customer.orders_count
Menghasilkan jumlah total pesanan yang telah dibuat oleh pelanggan.
customer.payment_methods
Menghasilkan metode pembayaran pelanggan yang disimpan.
customer.phone
Menghasilkan nomor telepon pelanggan. Nomor telepon hanya terisi jika pelanggan menggunakan nomor telepon saat checkout, telah memilih untuk menerima notifikasi SMS, atau jika Anda menambahkannya secara manual ke akun pelanggan mereka.
customer.store_credit_account.balance

Menghasilkan saldo kredit toko pelanggan dalam mata uang yang terkait dengan konteks yang relevan. Contoh:

{{customer.store_credit_account.balance | money_with_currency}}
customer.tags
Menghasilkan tag yang terkait dengan pelanggan.
customer.tax_exempt
Menghasilkan true jika pelanggan bebas pajak, dan menghasilkan false jika tidak.
customer.total_spent
Menghasilkan jumlah total yang telah dibelanjakan pelanggan untuk semua pesanan dari toko Anda.
email.*

Variabel ini memberikan akses ke properti email berikut:

  • subject menampilkan baris subjek email.
  • preview_text menampilkan teks pratinjau email.
  • open_tracking
    Variabel ini memberikan akses ke blok pelacakan dibuka yang telah diformat sebelumnya. Variabel ini diperlukan jika Anda membuat email dengan kode kustom dan telah mengaktifkan pelacakan dibuka.
    shop.*
    Variabel ini memberikan akses ke properti toko berikut:
  • name menampilkan nama toko.
  • domain menampilkan domain utama toko.
  • url menampilkan URL toko.
  • shopify_domain menampilkan domain Shopify toko.
    • alamat menampilkan alamat toko, yang memberikan akses ke properti alamat berikut:
      • address1
      • address2
      • city
      • country
      • phone
      • province
      • zip
    unsubscribe_url
    Variabel ini memberikan akses ke URL berhenti berlangganan mentah, dan dapat disesuaikan. Jika Anda membuat email dengan kode kustom, Anda wajib menyertakan variabel unsubscribe_url atau unsubscribe_link. Baik unsubscribe_url maupun unsubscribe_link akan selalu mengarah ke domain toko online utama dan tidak dapat diubah untuk mengarahkan ke tempat lain.

    Variabel Liquid yang didukung untuk email checkout yang ditinggalkan

    Anda dapat menggunakan variabel berikut untuk menyesuaikan pesan email Shopify Messaging untuk checkout yang ditinggalkan dengan Liquid.

    Variabel abandoned_checkout hanya terisi jika email merupakan bagian dari otomatisasi pemasaran checkout yang ditinggalkan. Jika tidak, variabelnya adalah null.

    Deskripsi variabel Liquid yang didukung Shopify Messaging untuk penelusuran yang ditinggalkan, keranjang, dan checkout
    VariabelDeskripsi
    abandoned_checkout.*

    Variabel ini memberikan akses ke properti checkout yang ditinggalkan berikut:

    • url menampilkan URL checkout yang ditinggalkan.
    • line_items menampilkan lima item pesanan pertama dari checkout yang ditinggalkan. Selain itu, setiap line_items objek berisi properti berikut tentang setiap produk:
      • components
      • image_url
      • product_title
      • variant_title
      • quantity
    • line_items.components menampilkan komponen checkout yang ditinggalkan. Selain itu, setiap komponen objek berisi properti berikut tentang setiap komponen:
      • image_url
      • quantity
      • product_title
      • variant_title
    • remaining_products_count menampilkan jumlah sisa item pesanan, jika ada lebih dari lima item pesanan di checkout yang ditinggalkan.
    id
    (checkout ID)
    ID unik checkout untuk penggunaan internal.
    shop
    Nama toko Shopify Anda.
    name
    Nama checkout yang ditinggalkan, juga dikenal sebagai nomor checkout.
    total_price
    Harga total pesanan (subtotal + biaya pengiriman - diskon pengiriman + pajak).
    shipping_price

    Biaya pengiriman.

    Contoh: {{ shipping_price | money }}

    shipping_address
    Alamat pengiriman.
    billing_address
    Alamat penagihan.
    line_items
    Daftar semua item pesanan dalam checkout yang ditinggalkan.
    unavailable_line_items
    Daftar semua item pesanan dalam checkout yang ditinggalkan yang tidak tersedia.
    note
    Catatan yang dilampirkan ke checkout yang ditinggalkan.
    landing_site

    Jalur situs landas yang digunakan pelanggan. Ini adalah halaman pertama yang diakses pelanggan saat mereka tiba di toko.

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

    landing_site_ref

    Mengekstrak parameter referensi dari situs landas. Parameter referensi dapat berupa: ref, source, r.

    Jika landing_site adalah /products/great-product?ref=my-tracking-token, maka landing_site_ref adalah my-tracking-token. Anda dapat melakukan tindakan tertentu jika parameter referensi Anda sama dengan nilai tertentu:

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

    URL pereferensi yang membawa pelanggan ke toko Anda.

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

    created_at

    Tanggal dan waktu pelanggan membuat checkout yang mereka tinggalkan.

    closed_at

    Tanggal dan waktu saat checkout ditutup.

    customer_locale
    Kode bahasa dua atau tiga huruf untuk lokal pelanggan, yang secara opsional diikuti oleh pengubah wilayah. Contohnya,
    en
    ,
    en-CA
    item_count
    Jumlah semua kuantitas item.
    unique_gateways
    Daftar penyedia pembayaran unik yang tersedia di checkout.
    discount
    Diskon yang diterapkan pada keranjang atau item pesanan di checkout yang ditinggalkan.
    discounts
    Daftar diskon yang diterapkan pada checkout.
    successfully_applied_discounts
    Diskon yang berhasil diterapkan ke checkout.
    discounts_amount

    Jumlah dolar diskon yang diterapkan oleh semua diskon.

    Contoh: +$5,00

    discounts_savings

    Jumlah dolar penghematan yang disebabkan oleh semua diskon.

    Contoh: -$5,00

    buyer_accepts_marketing
    Menampilkan
    true
    atau
    false
    bergantung pada apakah pelanggan menerima pemasaran selama checkout yang ditinggalkan.
    subtotal_line_items
    Item baris yang digunakan untuk menghitung harga subtotal di checkout, tidak termasuk item baris tip apa pun.
    requires_shipping
    Menampilkan
    true
    jika ada setidaknya satu item di checkout yang memerlukan pengiriman.
    subtotal_price
    Harga subtotal item pesanan di checkout.
    email
    Email yang terkait dengan checkout yang ditinggalkan.
    shop_name
    Nama toko Anda.
    tax_lines

    Pajak yang diperinci berdasarkan jenis pajak:

    {% for tax_line in tax_lines %}
    {{ tax_line.title }} ({{ tax_line.rate_percentage }}%) : {{ tax_line.price | money_with_currency  }}
    {% endfor %}
    tax_price
    Gabungan pajak dari semua item di checkout.
    attributes

    Setiap atribut yang dilampirkan pada checkout yang ditinggalkan.

    Contoh: {{ attributes.gift-note }}

    shipping_method
    Informasi tentang metode pengiriman pertama yang tersedia di checkout.
    shipping_methods
    Metode pengiriman yang tersedia di checkout.
    free
    Menampilkan
    true if the total price of the checkout is zero.
    free_shipping
    Menampilkan
    true
    jika checkout tidak memerlukan pengiriman, atau jika harga pengiriman adalah nol.
    different_billing_address
    Menampilkan
    true
    atau
    false
    berdasarkan apakah alamat pengiriman sama dengan alamat penagihan.
    customer
    Objek pelanggan yang berisi atribut dari output pelanggan.
    gift_cards
    Kartu hadiah yang diterapkan ke checkout.
    gift_cards_amount
    Jumlah harga checkout yang akan dibayar dengan kartu hadiah.
    transactions
    Transaksi checkout.
    shareable_url
    URL produk pertama di item pesanan.
    shareable_title
    Judul produk item pesanan pertama.
    total_tip
    Total tip yang ditambahkan pelanggan di checkout.
    discount_applications
    Menjelaskan mengapa dan bagaimana item didiskon di checkout.
    cart_level_discount_applications
    Aplikasi diskon khusus keranjang untuk keranjang.
    currency
    Mata uang checkout yang ditinggalkan.
    line_items_subtotal_price
    Jumlah harga semua item pesanan checkout, setelah diskon item pesanan diterapkan.

    Variabel Liquid untuk email penelusuran yang ditinggalkan dan keranjang yang ditinggalkan

    Variabel abandoned_visit.* hanya terisi jika email merupakan bagian dari otomatisasi pemasaran keranjang yang ditinggalkan atau penelusuran produk yang ditinggalkan. Tinjau properti berikut yang dapat diakses melalui variabel ini.

    Deskripsi variabel Liquid yang didukung Shopify Messaging
    VariabelDeskripsi
    abandoned_visit.*

    Variabel ini memberikan akses ke properti berikut dari keranjang atau penelusuran yang ditinggalkan:

    • url menampilkan URL keranjang atau penelusuran yang ditinggalkan.
    • products_added_to_cart menampilkan lima item pesanan produk pertama yang ditambahkan ke keranjang dari kunjungan yang ditinggalkan. Selain itu, setiap products_added_to_cart objek berisi properti berikut tentang setiap produk:
      • title
      • image_url
      • variant_title
      • quantity
    • products_viewed menampilkan lima produk pertama yang dilihat selama kunjungan yang ditinggalkan. Selain itu, setiap products_viewed objek berisi properti berikut tentang setiap produk:
      • title
      • description
      • image_url
      • url
      • image_alt_text
    • remaining_cart_products_count menampilkan jumlah sisa item pesanan, jika ada lebih dari lima item pesanan di checkout yang ditinggalkan.

    Menggunakan variabel wajib

    Saat Anda membuat email Liquid kustom, variabel unsubscribe_link atau unsubscribe_url wajib diisi. Jika Anda telah mengaktifkan pelacakan dibuka, variabel open_tracking juga wajib diisi.

    Meskipun variabel ini dapat dimasukkan di mana saja dalam kode untuk email Anda, tempat paling umum untuk menambahkannya adalah di bagian footer email, seperti dalam contoh berikut:

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

    Contoh kode Liquid kustom

    Anda dapat menambahkan Liquid atau HTML kustom di editor kode. Kode berikut adalah contoh cara menambahkan kode Liquid untuk menampilkan nama toko Anda, tombol kustom, dan gambar berukuran kustom dalam pesan email.

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