管理画面関連

各テンプレートで使用できる変数

ecforce では以下のテンプレートは、Liquid テンプレートエンジンを採用しています。

  • メールテンプレート
  • LPテンプレート
  • 帳票(出庫伝票・受注帳票)
  • ステップメール配信内容 (オプション機能)
  • Webhookテンプレート (オプション機能)

Liquid テンプレートエンジンにより、動的に変動する受注情報や顧客情報などを「変数」として呼び出せます。

使用できる変数

使用できる変数は各画面によって異なります。
※各編集画面で使用できる変数一覧は「使用できる変数一覧」をよりご確認ください。

メールテンプレートで使用できる変数は、各カテゴリで異なります。
該当カテゴリで使用できない変数を指定した場合、空白が出力されます。
高度な機能となりますが、Liquidを使用することでメールテンプレートの条件分岐・ループ処理が可能です。

本記事では、Liquidの使い方例を参考としてご紹介します。
※Liquidの使い方・文法などの確認は、カスタマーサポートのサポート対象外です。

単品注文と定期注文で受注情報の表示内容を一部変更したい

設定例

{% if order.recurring? %}
この受注は定期受注です。
{% else %}
この受注は通常受注です。
{% endif %}

出力例

この受注は定期受注です。

今日の日付を表示したい

設定例1

{{ "now" | date: "%Y/%m/%d" }}

出力例1

2019/03/03

設定例2

{{ "now" | date: "%Y-%-m-%-d" }}

出力例2

2019-3-3

今日+X日の日付を表示したい

設定例

今日(2019/04/25 とします)の14日後の日付を表示します

{% assign seconds = 14 | times: 24 | times: 60 | times: 60 %}
{{ "now" | date: "%s" | plus: seconds | date: "%-m月%-d日" }}

出力例

5月9日

受注のデバイス情報を表示したい

(a) 受注管理の「デバイス」の値をそのまま表示する場合

設定例

{{ order.device_variant }}

出力例1

LPからスマートフォンで購入された場合

smartphone

出力例2

LPからPCで購入された場合

pc

出力例3

ショップから購入された場合・管理画面から受注作成された場合・定期2回目以降の受注の場合

  (何も出力されません)
  • LPから購入された場合、smartphone か pc が出力されます。
  • ショップページから購入した受注・定期2回目以降の受注・受注作成から作成した受注の場合は何も表示されません。

(b)(a)で出力する文字列を「モバイル」「PC(大文字)」にする場合

設定例

{% if order.device_variant == 'smartphone' %}モバイル{% else %}{{ order.device_variant | upcase }}{% endif %}

出力例1

LPからスマートフォンで購入された場合

モバイル

出力例2

LPからPCで購入された場合

PC

出力例3

ショップから購入された場合・管理画面から受注作成された場合・定期2回目以降の受注の場合

  (何も出力されません)

(c)LP以外からの購入の場合は一律で「その他」と表示、LPから購入された場合は (b) と同じ条件にする場合

設定例

{% if order.device_variant == blank %}その他{% elsif order.device_variant == 'smartphone' %}モバイル{% else %}{{ order.device_variant | upcase }}{% endif %}

出力例1

LPからスマートフォンで購入された場合

モバイル

出力例2

LPからPCで購入された場合

PC

出力例3

ショップから購入された場合・管理画面から受注作成された場合・定期2回目以降の受注の場合

その他

(d) LPからスマートフォンで購入された場合は「モバイル」、その他は一律で「PC」と表示する場合

設定例

{% if order.device_variant == 'smartphone' %}モバイル{% else %}PC{% endif %}

出力例1

LPからスマートフォンで購入された場合

モバイル

出力例2

LPからPCで購入された場合

PC

出力例3

ショップから購入された場合・管理画面から受注作成された場合・定期2回目以降の受注の場合

PC

配達日の指定がない場合は「指定なし」と出力したい

設定例

{% if order.scheduled_to_be_delivered_at == blank %}
指定なし
{% else %}
{{ order.scheduled_to_be_delivered_at | date: '%Y/%m/%d' }}
{% endif %}

出力例1

配達日の指定がある場合(受注管理>受注管理 の配送予定日に日付が入っている場合)

2019/04/05

出力例2

配達日の指定がある場合(受注管理>受注管理 の配送予定日に日付が入っていない場合)

指定なし

配達希望時間について、指定されなかったときは「指定なし」と出力したい

設定例

{% if order.scheduled_delivery_time == blank %}
指定なし
{% else %}
{{ order.scheduled_delivery_time }}
{% endif %}

出力例1

配達日の指定がある場合(受注管理 > 受注管理 のお届け時間に指定時間が表示されている場合)

午前中

出力例2

配達日の指定がある場合(受注管理 > 受注管理 のお届け時間に「指定なし」と表示されている場合)

指定なし

複数商品を購入された際の明細表示方法を変えたい

  • 規格を持たない商品の場合は規格は出力しません。
  • 税率設定で設定可能な印つきの商品名を出力しています。印なしの商品名を出力したい場合は {{ order_item.name_with_tax }} を {{ order_item.variant.name }} に変更してください。

設定例

{% for order_item in order.order_items %}
商品名: {{ order_item.name_with_tax }}{% if order_item.variant.option_values_presentation %} ({{ order_item.variant.option_values_presentation }}){% endif %}
商品コード: {{ order_item.product.number }}
SKUコード: {{ order_item.variant.sku }}
単価(税抜): {{ order_item.price }} 円
数量: {{ order_item.quantity }}
価格(単価×数量): {{ order_item.price | times: order_item.quantity }} 円
{% endfor %}

出力例

  商品名:商品A (サイズ:S 色:赤)
  商品コード: P01
  SKUコード: SKU01
  単価(税抜): 1000円
  数量: 2
  価格(単価×数量): 2000円

  商品名:商品B ※
  商品コード: P02
  SKUコード: SKU02
  単価(税抜): 1000円
  数量: 1
  価格(単価×数量): 1000円

購入した商品により表示内容を変えたい

注文完了メールでよく使われる手法です。 受注商品情報に特定の商品コード・SKUコード・商品名を持つ場合に特定の表示をする、などの切り分けが可能です。
if の後の変数は適宜読み替えてください。

設定例

商品コード:order_item.product.number
SKUコード:order_item.variant.sku
商品名:order_item.product.name

(a) 完全一致させる場合

※SKUコードでの実行例です。order_item.variant.sku の部分は適宜読み替えてください。

設定例

{% for order_item in order.order_items %}
{% if order_item.variant.sku == 'SKU-001' %}
SKUコードが「SKU-001」のときに表示したい文章。
{% else %}
SKUコードが「SKU-001」以外のときに表示したい文章。SKU-001のときのみ表示させたいときは else は不要です。
{% endif %}
{% endfor %}

出力例1

購入商品のSKUコードが「SKU-001」「SKU-002」の2種類のとき

  SKUコードが「SKU-001」のときに表示したい文章。
SKUコードが「SKU-001」以外のときに表示したい文章。SKU-001のときのみ表示させたいときは else は不要です。

出力例2

購入商品のSKUコードが「SKU-001」のみのとき

SKUコードが「SKU-001」のときに表示したい文章。

出力例3

購入商品のSKUコードが「SKU-003」のみのとき

  SKUコードが「SKU-001」以外のときに表示したい文章。SKU-001のときのみ表示させたいときは else は不要です。

(b) 部分一致で判断したい場合

※商品名での実行例です。order_item.product.name の部分は適宜読み替えてください。

設定例

{% for order_item in order.order_items %}
{% if order_item.product.name contains '化粧水' %}
購入商品名に「化粧水」の文字列を含んでいるときに表示したい文章。
{% elsif order_item.product.name contains '乳液' %}
購入商品名に文字列「化粧水」を含まず、文字列「乳液」を含んでいるときに表示したい文章。
{% else %}
購入商品名に文字列「化粧水」「乳液」を含まないときに表示したい文章。
{% endif %}
{% endfor %}

出力例1

購入商品名が「超高級化粧水セット」の場合

購入商品名に「化粧水」の文字列を含んでいるときに表示したい文章

出力例2

購入商品名が「美容液&乳液サンプルセット」の場合

購入商品名に文字列「化粧水」を含まず、文字列「乳液」を含んでいるときに表示したい文章。

出力例3

購入商品名が「お手頃美容液」の場合

購入商品名に文字列「化粧水」「乳液」を含まないときに表示したい文章。

出力例4

購入商品名が「超高級化粧水・乳液セット」の場合

購入商品名に「化粧水」の文字列を含んでいるときに表示したい文章。

支払い方法により表示内容を変えたい

注文完了メールでよく使われる手法です。
特定の支払い方法の場合に、決まった文章を表示する際に活用できます。

「支払い方法名」で場合分けを行った場合「支払い方法管理」で支払い方法の表示名称を変更する際は、あわせてメールテンプレートも修正が必要となります。
上記を避けるためには「支払い方法ID」での場合分けをご利用ください。

(a) 支払い方法名で場合分けする場合

設定例

{% if order.payment.payment_method.name == "銀行振込" %} 
xxxxxx(振込先口座情報)
{% endif %}

(b) 支払い方法IDで場合分けする場合

設定例

{% if order.payment.payment_method.id == 15 %}
xxxxxx(振込先口座情報)
{% endif %}

支払い方法IDは「支払い方法管理」でご確認ください。

この記事は役に立ちましたか?
1人中0人がこの記事が役に立ったと言っています
他にご質問がございましたら、リクエストを送信してください

この記事の目次

このセクションの記事

管理画面関連