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.
Di halaman ini
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_linkatauunsubscribe_urlwajib diisi dalam email Liquid kustom. Jika Anda telah mengaktifkan pelacakan dibuka, variabelopen_trackingjuga 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:
- Semua templat email
- Templat email checkout yang ditinggalkan
- Templat email penelusuran yang ditinggalkan dan keranjang yang ditinggalkan
Variabel Liquid yang didukung untuk semua templat email
Anda dapat menggunakan variabel berikut untuk menyesuaikan pesan email Shopify Messaging mana pun dengan Liquid.
| Variabel | Deskripsi |
|---|---|
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.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.
|
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.
| Variabel | Deskripsi |
|---|---|
abandoned_checkout.* | Variabel ini memberikan akses ke properti checkout yang ditinggalkan berikut:
|
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_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: |
landing_site_ref |
Mengekstrak parameter referensi dari situs landas. Parameter referensi dapat berupa: Jika {% if landing_site_ref == 'my-tracking-token' %}
My action...
{% endif %}
|
referring_site |
URL pereferensi yang membawa pelanggan ke toko Anda. Contoh: |
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 trueatau falsebergantung 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 truejika ada setidaknya satu item di checkout yang memerlukan pengiriman. |
subtotal_price | Harga subtotal item pesanan di checkout. |
| 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: |
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 truejika checkout tidak memerlukan pengiriman, atau jika harga pengiriman adalah nol. |
different_billing_address | Menampilkan trueatau falseberdasarkan 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.
| Variabel | Deskripsi |
|---|---|
abandoned_visit.* | Variabel ini memberikan akses ke properti berikut dari keranjang atau penelusuran 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>