Shopify
在庫ステータスの表示
メタフェイズでは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を利用したストアの構築・運用のご相談はお問い合わせフォームより受け付けております。
お問い合わせ
Webサイト制作やWebビジネスに関するお悩みがある方はお気軽にご相談ください。