Liquid構文の使い方について
- 公開日:2025年02月17日
- 更新日:2025年02月21日
EC出品テンプレートを作成する際に利用できるLiquid構文の基本的な説明と実際のユースケースをご紹介して解説します。
EC出品を効率化するためにEC出品テンプレート利用し、出品作業は効率化されたものの、テンプレート数が多く、買取時に入力した情報を出品時に再度選択する必要がある場合には、Liquid構文を使ってEC出品テンプレートを作成することで複数の出品テンプレートを集約して作成が可能になるなどより効率化を図ることが可能です。
こちらでは、在庫やカタログの情報を元により効率的にECテンプレートを作成するために、ユースケース毎のサンプルの構文を用意してあります。
Liquid構文とは
ワンポイントアドバイス
Liquid構文とは、Shopifyなどで使われているLiquid template languageを用い、変数の展開やif文などを実現するものです。
『構文』『変数』『if文』など普段聞きなれない言葉ばかりではありますが、各ユースケースのガイドに従って作成することができます。ユースケースに沿って、次のようによく使われている『if文』の例を元にLiquidについてご確認ください。
Liquid構文の基本的な考え方
No | 例 | Liquid構文 | 日本語 |
---|---|---|---|
1 | ReCOREの【グレード】情報を元にECサイト状態を指定する場合 | {% if item.grade.name == ‘新品’ %} |
もし、グレードが新品である場合 |
活用例の解説
上記は対応する箇所を、文字の色や背景色で視覚化し、Liquid構文を日本語に変換したものです。
item.grade.nameは、店頭買取など在庫に指定している【グレード】を指します。
==は、前後の文字を比較し等しいを意味し【である】を表します。
なお、!=は、等しくないを意味し【でない】を表します。
条件を表す『if文』は、{% if ~~ %}で始まり、最後は、{% endif %}で締め括ります。
Liquid構文の基本的な使い方
No | 画像 | 項目 | 概要 | 構文例 |
---|---|---|---|---|
1 | 変数 | 変数を使用する場合は、変数を『 {{ }}』(出力タグ:Output tag) で囲む ▼使用可能な変数 |
{{ product.attribute.jan }} スペースの有無は関係なく、以下の記載も問題ありません。 |
|
2 | フィルタ | フィルタを使用する場合は、適用するフィルタ前に『|』(パイプ 記号)を記載 ▼構文例 ▼使用可能な変数フィルタ |
{{ product.image_urls | join: ‘,’ }} |
|
3 | 構文 | if文などの構文を使用する場合は、文頭に『{%』文末を『 %}』 で囲む ▼構文例 ▼使用可能な |
{% if item.image_urls.size > 0 %} |
Liquid構文でECサイトの選択肢を指定する際の注意点
各ECサイトの出品項目をLiquidで指定する場合、表示名ではなくIDを指定 する必要があります。
コンディションやカテゴリなどでは、IDを出力するようにLiquidを記述してください。
例:Amazonのコンディション指定
表示『中古 – 非常に良い』 →ID『UsedVeryGood』を出力
IDの調べ方
以下の2つの方法で確認できます。
方法①:デフォルトモード → Liquidモードで確認
- 通常モードで選択 → Liquidモードに切り替えるとIDが表示
方法②:Liquidモードで【Ctrl】+【Space】を押す(推奨)
- 表示される選択肢の中で、右側が
const
のもの を選ぶ
💡 例外:カテゴリ・ブランドなど大量の選択肢は非対応のため
👉 方法①で確認するか、別途ID一覧表を用意
Liquidを使って複数の値を指定する際の注意点①
Liquidを使って複数の値を指定する際の注意点②
配列型の変数 を使用する場合、そのまま出力すると意図しない形になることがあります。
👉 変数例:product.image_urls
や product.category.names
など
💡 解決策:join
フィルターを使用し、適切に区切って出力する
例:画像URLをカンマ区切りで出力
✅ 適切な形式で出力されるように調整
Liquid記載例(誤り)
product.category.names
は配列なので、そのまま出力すると 区切りなしで連結 される。- その結果、「家電テレビ20インチ」 という1つのタグになってしまう。
解決策
join: ','
を適用すると、配列がカンマ区切りの文字列に変換される。- その結果、タグとして 「家電」「テレビ」「20インチ」 が個別に認識される。
補足:コメントアウト
✅ {% comment %} ... {% endcomment %}
の間のテキストは Liquid の処理で無視される
✅ コードの横に 対応するカテゴリ名をコメントで書いておく と、後で編集・確認しやすい
✅ Shopify の管理画面やテーマエディタでコードを見たときに、カテゴリの意味が分かりやすくなる
{% if item.grade.name == ‘中古A’ %}
used10 {% comment %} 未使用に近い {% endcomment %}
{% elsif item.grade.name == ‘中古D’ %}
used80 {% comment %} 全体的に状態が悪い {% endcomment %}
{% endif %}
Liquidを用いたテンプレート作成
デフォルト(通常)入力へ変更する場合
Liquid構文の活用例
利用目的に合わせたヘルプガイドを作成しております。サンプルコードと編集方法が記載されています。編集方法に従って作業していただくだけで作成できるので、参考ガイドURL列を参考にご活用ください
No | 利用モール分類 | ユースケース | 参考ガイドURL |
---|---|---|---|
1 | 全モール共通 | ReCOREのグレードを元にECモール側の状態を指定したい |
https://www.notion.so/novasto/ReCORE-EC-37b79d14517a44148d7f2e80f18d8537 |
2 | 全モール共通 | ECモール側のカテゴリをReCOREのカテゴリを元に指定したい |
https://www.notion.so/novasto/EC-ReCORE-c3a460e248c04f2c86fa5e87109667f0 |
3 | モール共通 但し、メルカリShops、 楽天ラクマを除く |
表形式の商品説明文を作成する際に、テンプレート数を抑えたい |
https://www.notion.so/novasto/7763738a560b444b8bb39d46b2c38f44 |
4 | モール共通 但し、メルカリShops、 楽天ラクマを除く |
商品説明文で対象状態(グレード)をフォーカスさせるテンプレートを作成したい |
https://www.notion.so/novasto/f944ca4c95364bc595f8e9df992d4575 |
5 | ヤフーオークション | 出品終了の曜日を指定したい |
https://www.notion.so/novasto/a2d1a36e18b0475e8f24f586fc8e44a1 |
6 | メルカリShops | 商品説明文を作成する際に、テンプレート数を抑えたい (HTMLなし) |
https://www.notion.so/novasto/HTML-a74e1f10659a4906b969acb62213cdcd |
7 | メルカリShops | ReCOREのブランド情報を元にメルカリのブランドを指定したい |
https://www.notion.so/novasto/ReCORE-94b397944a404eff8e34fb681c56099e?pvs=4 |
操作方法や設定などが不明な場合
お手数ではございますが、ReCOREのチャットよりお問合せください。
お問合せの際は、以下をご確認のうえお問合せください。
・EC出品テンプレートにおける不明な点
・設定するECサイト
・お客様より設定操作された具体的な内容
一方で、具体的なHTMLやLiquid構文内容のコード記載内容における詳細な設定方法については、ご案内が難しい場合もございますのでご了承ください。
解説は以上です。
不明な点は、ReCOREチャットよりお問合せくださいませ。
この記事は役に立ちましたか?