会員登録成功時は会員登録完了ページへ遷移させ、会員登録失敗の場合には登録ページに戻りエラー表示をさせたい。

AI-generated summary

Shopify(Liquid)で会員登録フォームの挙動を「成功時は登録完了ページへ遷移、失敗時は登録ページに戻してエラー表示」にしたいという技術相談。

  • 参考記事の手順で「成功時の遷移」と「失敗時に登録ページを再表示」までは実装できた。
  • しかし最終ステップの「エラー表示」が機能せず、遷移設定を入れる前に表示されていたエラー(必須情報不足、既に登録済みメール等)も出なくなった。

提示コード

  • theme.liquid:直前でjQueryを読み込み。
  • page-register-completed-template.liquid:未ログイン(customerが無い)場合のunlessブロックのみ記載。
  • customers/register.liquid:{% form 'create_customer' %} 内に {{ form.errors | default_errors }} を置いているが、実際にはエラーが表示されない状態。

結論・進展

  • エラー表示を復活させる方法の質問で終わっており、解決策や回答はまだ提示されていない。

初めまして。ご覧くださりありがとうございます。
現状こちらの記事を参考に会員登録成功時に登録完了ページに遷移、失敗時には会員登録ページを再度表示させることはできました。

https://qiita.com/br-to/items/a35f809e89b9caa31170

ですが、上記記事の最終ステップであるエラーの表示がうまくいかず、遷移設定の前にあったエラー表示もでなくなりました。(必要な情報がそろっていない場合、すでに登録済みのメールアドレスである場合のエラーなど)

会員登録失敗の場合エラー表示させるにはどうすればよいか、どなたかご教示いただけませんでしょうか。

▼現状のコード ▼

theme.liquid

のすぐ上
{{ '//ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js' | script_tag }}

 
  

page-register-completed-template.liquid

最上部に{% style %}、{% endstyle %}のすぐ下

{% unless customer %}

{% endunless %}

customers/register.liquid

{% style %}
.error-hide{
display:none;}
{% endstyle %}

  

    
    

      

        # {{ 'customer.register.title' | t }}

      {% form 'create_customer' %}
      {{ form.errors | default_errors }}
      
        

          
        

        ・・・・・・
        
          
        

        
          
          
            
              {{ 'customer.register.cancel' | t }}
            
          
        

      

      {% endform %}
    

     
    

会員登録エラー

  

  

何卒よろしくお願いいたします。