ユーザーの注文確認メールに受け取り場所を反映したい

Topic summary

店舗受取専用ショップで、注文完了メールに受け取り場所の住所情報を表示させたいという質問です。

試したこと:

  • 「店舗受取の準備完了メール」のテンプレートコード({{ location.name }}{{ location.address1 }}など)を注文完了メールに挿入
  • しかし、テスト注文では受け取り場所が表示されず、期待した住所情報が出力されない

回答内容:

  • 注文完了メールではlocationオブジェクトが利用できないため、テンプレートのみの変更では住所表示は不可能
  • {{ shipping_method.title }}で店舗名のみは表示可能

提案された解決策:

  1. 推奨方法: 注文時に店舗受取が選択された際、注文のアトリビュート(メモ)に住所情報をセットするカスタマイズを実装
  2. 非推奨方法: テンプレート内に店舗名ごとの住所を直接記載(二重管理になるため避けるべき)

参考リンクとして、Globoのナレッジベース記事が紹介されています。

状況: 解決には追加のカスタマイズ実装が必要で、議論は継続中です。

Summarized with AI on November 1. AI used: claude-sonnet-4-5-20250929.

店舗受取のみを許可しているショップです。

ユーザに通知される「注文完了メール」に、受け取り場所を入れたいと考えています。

そこでデフォルトの「店舗受取の準備完了メール」に受け取り場所が表示されていたので、それを丸々「注文完了メール」に入れました。差し込んだコードは文末に載せています。

しかし、テスト注文を行うと以下のキャプチャのように、受け取り場所が表示されません。

「店舗受取の準備完了メール」と同様、以下のように表示したいです。

どうすれば解決できますでしょうか。

差し込んだコード:

        <table class="section--margin">
        <tr>
          <td>
            <h4>受け取り場所</h4>
          </td>
        </tr>
        <tr>
          <td>
            <p>{{ location.name }}</p>
          </td>
        </tr>
        <tr>
          <td>
            <p>{{ location.address1 }}</p>
          </td>
        </tr>
        {% if location.address2 != blank %}
        <tr>
          <td>
            <p>{{ location.address2 }}</p>
          </td>
        </tr>
        {% endif %}
        <tr>
          <td>
            <p>{{ location.city | capitalize }} {{ location.province | capitalize }} {{ location.zip | upcase }}</p>
          </td>
        </tr>
        <tr>
          <td class="empty-line"> </td>
        </tr>
        <tr>
          <td>
            <a href="http://www.google.com/maps/search/?api=1&query={{ location.name }} - {{ [location.address1, location.address2].compact.join(', ') }}, {{ location.city }}, {{ location.province }}, {{ location.zip }}" target="_blank">
              地図を開く 
              <span class="small">→</span>
            </a>
          </td>
        </tr>
      </table>

@koji_1

十分に調査できたとは言えないのですが、

おそらく、テンプレート以外のカスタマイズも行わないと、

注文の確認メールに、店舗受取に指定した店舗の住所を表示することはできないです。

なお、店舗受取に指定した店舗の名称を表示することはできます。

{{ shipping_method.title }}

下記のサイトで、

https://globo.io/kb/show-local-delivery-and-store-pickup-information-on-email-notification/

店舗受取に指定した店舗の住所を表示するテンプレートも紹介されているのですが、

これはおそらく、

注文において店舗受取が選択された場合に、注文のアトリビュート(メモ)に、添付の住所情報などをセットする前提になっています。

質問者様も

「注文において店舗受取が選択された場合に、注文のアトリビュート(メモ)に、添付の住所情報などをセットする」

を実装すれば、

店舗受取に指定した店舗の住所を表示できるかと思います。

もしくは、

おすすめはしませんが、下記のように通知のテンプレート内に店舗の住所を記載する方法もあります。

(ロケーション情報との二重管理になるため避けた方が良いです。)

{% if shipping_method.title ==  "特定の店舗名" %}
{% capture location_address %}
都道府県

市区町村

字・番地

電話番号
{% endcapture %}
{% endif %}

ご参考まで。

(キュー田辺)