new_window arrow_01 arrow_02 arrow_03 arrow_04 arrow_05 arrow_06 arrow_07 arrow_08 arrow_09 menu close metaphase facebook instagram twitter tumblr logo_metaphase

[shopify]在庫ステータスの表示

Other

2021.05.25

メタフェイズではshopifyを利用したストア構築を行っています。
その工程の中のオリジナルデザインのテーマ開発にはshopifyのテンプレート言語「Liquid」を使用します。
今回はliquidによる在庫ステータスの表示を紹介いたします。

product.liquidで下記コードを記述します。

{%- for variant in product.variants -%}
 <div>
 {%- assign is_in_stock = false -%}
 {%- if 0 < variant.inventory_quantity -%}{%- assign is_in_stock = true -%}{%- endif -%}
 
 {{ variant.title | escape }} - 
 
 {%- if is_in_stock -%}
 在庫あり
 {%- elsif is_in_stock == false and variant.inventory_policy == 'continue' -%}
 在庫なし 販売を続ける
 {%- elsif is_in_stock == false and variant.incoming -%}
 在庫なし 再入荷待ち 入荷予定日:{%- if variant.next_incoming_date -%}{{ variant.next_incoming_date | date:"%Y/%m/%d" }}{%- else -%}未定{%- endif -%}
 {%- elsif is_in_stock == false -%}
 在庫なし
 {%- endif -%}
 </div>
{%- endfor -%}

{%- for variant in product.variants -%}

productの全バリエーションを処理するための記述です。

{%- assign is_in_stock = false -%}
{%- if 0 < variant.inventory_quantity -%}{%- assign is_in_stock = true -%}{%- endif -%}

変数is_in_stockに対象バリエーションの在庫が0以上ならばtrue 0以下ならばfalseを代入する処理です。

{{ variant.title | escape }} -

バリエーション名を表示する処理です。

{%- if is_in_stock -%}
在庫あり

対象バリエーションの在庫が0以上ならば「在庫あり」と表示する処理です。

{%- elsif is_in_stock == false and variant.inventory_policy == 'continue' -%}
在庫なし 販売を続ける

対象バリエーションの在庫が0以下かつ「在庫切れの場合でも販売を続ける」がチェックされている時「在庫なし 販売を続ける」と表示する処理です。

{%- elsif is_in_stock == false and variant.incoming -%}
在庫なし 再入荷待ち 入荷予定日:{%- if variant.next_incoming_date -%}{{ variant.next_incoming_date | date:"%Y/%m/%d" }}{%- else -%}未定{%- endif -%}

対象バリエーションの在庫が0以下かつshopify管理画面で仕入れ情報が入力済みの時「在庫なし 再入荷待ち 入荷予定日:yyyy/mm/dd」と表示する処理です。
仕入れ情報に入荷日が設定されていない時「在庫なし 再入荷待ち 入荷予定日:未定」と表示します。

{%- elsif is_in_stock == false -%}
在庫なし

対象バリエーションの在庫が0以下かつ上記の条件に当てはまらない時「在庫なし」と表示する処理です。

 

 
shopifyを利用したストアの構築・運用のご相談はお問い合わせフォームより受け付けております。

最新のブログ記事