明細表印刷時に請求先住所を変更する

明細表印刷時に請求先住所を変更する

先日、shopifyの注文の明細表を印刷するときに「請求先住所」を変更したいとご相談を受けました。

請求先住所」はshopifyではセキュリティ上変更することはできず、変更したい場合は、改めて注文してもらう必要があります。

しかし、明細表を印刷するときであれば、変更した「請求先住所」で印刷することができます。

今回はその方法を紹介します。

仕様

次のような仕様で作りました。

注文のメモ欄や注文のタグを重宝している人には、そぐわない仕様なので気をつけてください。

一度実装したらテンプレートファイルを触る必要はないので、クライアントでも使える方法です。

  • 注文ごとに個別で「請求先住所」の変更ができる
  • liquidファイルなどテンプレートファイルを編集する必要はない
  • 注文の「メモ」欄を使用する
  • 注文の「タグ」を使用する

現在は注文のメタフィールドが自由には使えませんが、自由に使えるようになれば、メモ欄やタグを使用せずにできると思います。

その時はまた新しく記事を書こうと思います。

変更するファイルの場所

管理画面の「設定」から「配送と配達」をクリックします。
※下の画像の赤枠。

次に「明細表のテンプレート」に移動します。

「編集」をクリックすれば、明細表のテンプレートが出てきますので、そのテンプレートを修正します。

請求先住所を変更するための分岐のコード

次のコードを「請求先住所」を出力している箇所に使用します。

コードをクリップボードにコピー
{%- unless order.tags contains '請求先変更' -%}
  {% comment %}
    本来の請求先住所
  {% endcomment %}

{%- else -%}
  {% comment %}
    メモの内容(変更する請求先住所)出力
  {% endcomment %}

  {{ order.note | newline_to_br }}
{%- endunless -%}

上記コードを少し説明すると

注文のタグに「請求先変更」というタグがあった場合には、請求先住所が出力する箇所に、注文の「メモ」の内容を出力するということになります。

「newline_to_br」というフィルターは改行箇所には<br>タグを入れるというフィルターです。

使い方

1.請求先住所を変更したい注文のタグに「請求先変更」のタグを追加します。

2.メモ欄に変更後の「請求先住所」を入力します。

改行も反映されるので、改行したい場所で改行させます。

3.明細表を印刷する

変更直後は反映されない場合もありますが、2〜3分待って印刷すると、
本来、請求先住所が出力される箇所に「2」でメモ欄に設定した内容が出力されます。


最初に書いたように、本来であれば注文のメタフィールドなどで設定したい内容ですが、現在はまだ「準備中」となっているので応急処置的ではありますが、このような方法で対応しました。

arrow_circle_up