メインコンテンツまでスキップ

通知、注文印刷、および納品書

以下のような各種テンプレートに有効期限やバッチ番号を追加できます:

始めるには、まず設定ページで「サードパーティアプリ連携用の注文の『追加の詳細』エントリを作成する」を選択して注文メモを有効にする必要があります。有効にした後、以下のジェネレーターでお使いの連携ツールに応じたコードスニペットを生成してください。

コードスニペット​

生成されたコードスニペットは、お使いの連携ツールの該当するLiquidテンプレート内で、有効期限データを表示したい場所に追加できます。このスニペットは既存のテンプレートと連携して有効期限データを表示するものであり、テンプレート全体を置き換えるものではありません。

リストにお使いの連携ツールが見当たらない場合やサポートが必要な場合は、お気軽にお問い合わせください。

使用している連携ツールが一覧にない場合​

{% comment %}
通知、注文印刷、納品書に商品の有効期限および関連情報を
表示するためのProduct Expiration Datesアプリ用コード。

特定の日数に近づくまで有効期限を非表示にしたい場合は、
以下の expires_window_days 変数に空白の代わりに希望する日数を設定してください。
例:

{% assign expires_window_days = 30 %}

サポートが必要な場合は help@screenstaring.com までお問い合わせください。
{% endcomment %}

{% assign expires_window_days = blank %}

{% capture key %}Expiration Dates {{ line_item.sku }}{% endcapture %}
{% if attributes[key] != blank %}
{% assign batches = attributes[key] | split: "|" %}
{% for batch in batches %}
{% assign batch_data = batch | split: "," %}
{% assign expires_date = batch_data[0] %}
{% assign expires_qty = batch_data[1] %}
{% assign expires_batch = batch_data[2] %}

{% assign now = "now" | date: "%s" %}
{% assign seconds_in_a_day = 86400 %}
{% assign expires_at = expires_date | date: "%s" | plus: seconds_in_day | minus: 1 %}
{% assign diff = expires_at | minus: now | divided_by: seconds_in_a_day %}
{% assign show_date = false %}

{% if expires_window_days == blank %}
{% assign show_date = true %}
{% elsif diff >= 0 and diff < expires_window_days %}
{% assign show_date = true %}
{% endif %}

{% if show_date %}
{% comment %}
日付フォーマットは、以下の '%d/%m/%Y' 部分を希望するフォーマットコードに変更することで調整できます。
参照: https://shopify.dev/api/liquid/filters#date
翻訳済みの日付を使用する方法については以下をご覧ください:
https://shopify.dev/docs/storefronts/themes/architecture/locales/storefront-locale-files
{% endcomment %}
Expires:
{{ expires_date | date: "%d/%m/%Y" }}

{% comment %}
数量やバッチ名を表示したくない場合は、以下を削除してください
{% endcomment %}
({{ expires_qty }})
{% if expires_batch != blank %}
{{ expires_batch }}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}

既存のコードで使用されている変数名に合わせて、line_item や line 変数の変更が必要になる場合があります。

日付の表示形式は Liquidの date フィルター に基づいています。"%d/%m/%Y" の部分を変更することで、希望する日付フォーマットコードに調整できます。指定できるコードの一覧は date フィルターのドキュメントをご覧ください。翻訳された日付形式を使用するには、テーマのロケールファイルで定義されている日付フォーマットを指定します。例えば、month_day_year というフォーマットが存在する場合(テーマによって異なります)、上記スニペット内の:

{{ expires_date | date: "%d/%m/%Y" }}

を以下のように変更できます:

{{ expires_date | date: format: "month_day_year" }}

技術的な詳細​

注文の明細品目ごとに属性が1つ追加されます。この属性には "Expiration Dates [ID]" という名前が付けられます。ここで [ID] は明細品目のSKU、バーコード、またはShopifyバリエーションIDのいずれかになります。どれが使用されるかはストアの設定によって異なります。SKUを使用している場合は常にSKUになります。バーコードのみを使用している場合はバーコードになります。

属性の値は、割り当てられた有効期限、数量、バッチ番号を含むカンマ区切りの文字列です:

2023-04-22,2,BATCH-NUMBER

明細品目に複数の割り当てがある場合、各割り当てはパイプ文字(|)で区切られます:

2023-04-22,2,BATCH-NUMBER-1|2023-12-25,1,BATCH-NUMBER-2