条件分岐
if / unless / caseと比較演算子を使い、ECの条件(在庫・セール・タグ)を正しく表現できる
最終確認: 2026-09
解説
受託の現場でなぜ必要か: この回では、if / unless / caseと比較の書き方を使い、在庫・セール・タグの条件を正しく書けるようになります。
受託では、「セール中はバッジ」「在庫僅少の表示」のように、ほぼすべての改修依頼が条件分岐になります。
条件分岐の書き方
基本はif / elsif / else / endifです。
否定はunlessで書きます。
多分岐はcase / whenで、when a, bと書くと複数の値をまとめられます。
比較に使える演算子
== / != / > / < / >= / <=とcontainsが使えます。containsは文字列の部分一致にも、配列に要素があるかにも使えます。product.tags contains 'new'は、テーマの定番の書き方です。
優先順位は分岐の順序で決まる
上から順に見て、最初に真になった枝だけが実行されます。
「在庫切れ」を「セール」より優先したいなら、ifの最初に在庫切れの判定を置きます。
優先したいものを先に書く、と覚えます。
発展:and / orの癖と、型の違う比較
JavaScriptと違い、and / orは右から評価され、括弧は使えません。
a or b and cはa or (b and c)の意味になります。
括弧を書くと別の意味に解釈されて、エラーになります。
複雑な条件はassignで分けて、読みやすくします。
また、'5' > 3のように文字列と数値を比べると実行時エラーになるので、設定値が文字列で来るときは注意します。
※ ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。