← inaro.devShopify学習ツール
07-05

条件分岐

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 ca or (b and c)の意味になります。
括弧を書くと別の意味に解釈されて、エラーになります。
複雑な条件はassignで分けて、読みやすくします。
また、'5' > 3のように文字列と数値を比べると実行時エラーになるので、設定値が文字列で来るときは注意します。

ステップ1 / 2

ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。