FROM CACHE - jp_header
このコミュニティはピアツーピアサポートに移行しました。Shopify サポートは今後、このコミュニティへのサービスを提供いたしません。これからもぜひ、他のマーチャントやパートナーとつながり、サポートし合い、経験を共有してください。 当社の行動規範に違反する行動や削除を希望するコンテンツがありましたら、引き続きご報告ください

テーマ 【Simple】 お客様がログインした後の表示について

解決済

テーマ 【Simple】 お客様がログインした後の表示について

noi
Shopify Partner
21 0 5

アカウント登録したお客様がログインした時に、

サイトの上部に

(名前)としてログインしました

と表示されます。

 

翻訳の内容を見てみると

{{ first_name }}としてログインしました

 

となっておりまして、できれば

(苗字)(名前)としてログインしました

 

 としたいのですが、適当に

{{ last_name }} {{ first_name }}としてログインしました

 

としてもエラーになりました。

解決方法ご存知の方がいらっしゃいましたらお助けください。

よろしくお願い申し上げます。

1 件の受理された解決策
Jizo_Inagaki
Shopify Partner
1168 423 734

成功

横から失礼します。

おそらくhrader.liquidで{{ last_name }}という変数の宣言と翻訳フィルターへの設定をされていないのではと思います。

{{ last_name }}という変数を使う方法ではありませんが一例を記載します。


header.liquidにある下記の部分が該当するかと思います。

 

{% if customer.first_name != blank %}
   {% capture first_name %}<a href="{{ routes.account_url }}">{{ customer.first_name }}</a>{% endcapture %}
   {{ 'layout.customer.logged_in_as_html' | t: first_name: first_name }}
{% else %}

 

上記部分を以下のように変更すれば実現できるのではと思います。

 

{% if customer.first_name != blank %}
  {% if customer.last_name != blank %}
    {% capture customer_name %}{{ customer.last_name }} {{ customer.first_name }}{% endcapture %}
  {% else %}
    {% capture customer_name %}{{ customer.first_name }}{% endcapture %}
  {% endif %}
  {% capture first_name %}<a href="{{ routes.account_url }}">{{ customer_name }}</a>{% endcapture %}
  {{ 'layout.customer.logged_in_as_html' | t: first_name: first_name }}
{% else %}

 

変数名が first_name のままでは出力内容に合わないのですが、ここを変更するならもう少し作業範囲を広げる必要があるため、手間を考えてとりあえずこの形にしています。

この方法であれば「言語の編集」のところは以下のままでよく、変更する必要はありません。

 

{{ first_name }}としてログインしました

 

なおcaptureやassignなどがよくわからないという場合には以下などのドキュメントをご覧ください。

https://shopify.dev/docs/themes/liquid/reference/tags/variable-tags

Jizo_Inagaki | フリーランスのwebデザイナー
- テーマのカスタム承れます。
- 記載した回答で解決できましたらベストソリューションの承認をお願いします。
- DMや指名による対応はご依頼として有料でのみ承ります。

元の投稿で解決策を見る

4件の返信4

株式会社フルバランス
Shopify Partner
1694 596 782

コード上問題ない様に思えます。

表示されているエラーを教えて頂けますでしょうか?

noi
Shopify Partner
21 0 5

kakuma-fblさんありがとうございます!

 

下記のようなエラーとなります。

I18n Error: Missing interpolation value "last_name" for "{{ last_name }} {{ first_name }}としてログインしました" 

Jizo_Inagaki
Shopify Partner
1168 423 734

成功

横から失礼します。

おそらくhrader.liquidで{{ last_name }}という変数の宣言と翻訳フィルターへの設定をされていないのではと思います。

{{ last_name }}という変数を使う方法ではありませんが一例を記載します。


header.liquidにある下記の部分が該当するかと思います。

 

{% if customer.first_name != blank %}
   {% capture first_name %}<a href="{{ routes.account_url }}">{{ customer.first_name }}</a>{% endcapture %}
   {{ 'layout.customer.logged_in_as_html' | t: first_name: first_name }}
{% else %}

 

上記部分を以下のように変更すれば実現できるのではと思います。

 

{% if customer.first_name != blank %}
  {% if customer.last_name != blank %}
    {% capture customer_name %}{{ customer.last_name }} {{ customer.first_name }}{% endcapture %}
  {% else %}
    {% capture customer_name %}{{ customer.first_name }}{% endcapture %}
  {% endif %}
  {% capture first_name %}<a href="{{ routes.account_url }}">{{ customer_name }}</a>{% endcapture %}
  {{ 'layout.customer.logged_in_as_html' | t: first_name: first_name }}
{% else %}

 

変数名が first_name のままでは出力内容に合わないのですが、ここを変更するならもう少し作業範囲を広げる必要があるため、手間を考えてとりあえずこの形にしています。

この方法であれば「言語の編集」のところは以下のままでよく、変更する必要はありません。

 

{{ first_name }}としてログインしました

 

なおcaptureやassignなどがよくわからないという場合には以下などのドキュメントをご覧ください。

https://shopify.dev/docs/themes/liquid/reference/tags/variable-tags

Jizo_Inagaki | フリーランスのwebデザイナー
- テーマのカスタム承れます。
- 記載した回答で解決できましたらベストソリューションの承認をお願いします。
- DMや指名による対応はご依頼として有料でのみ承ります。
noi
Shopify Partner
21 0 5