テーマ仕様書 更新履歴
2024年
2024/11/19更新

2024/11/19更新

+ 更新した行
- 削除した行

認証基盤連携対応

[オプション]認証基盤連携 (opens in a new tab) でお客様が運用している認証基盤とecforceを連携し、顧客は認証基盤からecforceのショップページやLPへログインできるようになります。ecforceへの新規会員登録時には、認証基盤より会員情報を取得して登録できます。

利用できる認証基盤の制約や詳細はFAQをご確認ください。

※認証基盤連携機能を利用しない場合の更新は任意です。

cart > カート画面

ec_force/shop/carts/show.html.liquid
ec_force/shop/carts/show.html+smartphone.liquid

+    {% unless auth_infra and auth_infra.login_only_auth_infra == true %}
       {% if line_settings['display_btn'] == '1' %}
         {% if customer_signed_in == false and encrypted_line_id == nil %}
           <!-- LINE ID 説明ポップアップ -->
           {{ line_settings['information_context'] }}
           <!-- LINE ID 連携ボタン(クラス) -->
           <a class="line-token-set-btn" href="#">LINEでログイン</a>
         {% elsif customer_signed_in == true and current_customer.line_id? == false %}
           <!-- LINE ID 説明ポップアップ -->
           {{ line_settings['information_context'] }}
           <!-- LINE ID 連携ボタン(クラス) -->
           <a class="line-token-set-btn" href="#">LINE ID 連携</a>
         {% endif %}
       {% endif %}
+    {% endunless %}
+
+    <!-- 認証基盤でのログインボタン -->
+    {% if auth_infra and auth_infra_regist == nil %}
+      {% unless customer_signed_in %}
+        <a class="auth-infra-token-set-btn" href="#">認証基盤でログイン</a>
+      {% endunless %}
+    {% endif %}
 
     <!-- 任意記述 -->
     上記価格は税抜き価格です。次以降の画面で別途消費税が加算されます。
       <a href="/shop/order/new">ご購入手続きへ</a>
     {% else %}
       <!-- ログインフォーム -->
+      {% unless auth_infra and auth_infra.login_only_auth_infra == true %}
         <form action="/shop/customers/sign_in?customer_return_to=%2Fshop%2Forder%2Fnew" id="new_customer" method="post">
           <input type="email" class="validate[required,custom[email]]" id="customer_email" name="customer[email]" placeholder="メールアドレス" value="{{ line_email }}">
           <input type="password" class="validate[required,minSize[8]]" id="customer_password" name="customer[password]" placeholder="パスワード">
           <input type="hidden" name="sign_in_route" value="shop_cart">
           <input type="submit" value="ログイン">
         </form>
 
         <!-- 会員登録と同時の購入リンク -->
         <a href="/shop/order/new?register_as_member=1">会員登録して購入手続きへ進む</a>
 
         <!-- ゲスト用購入リンク -->
         <a href="/shop/order/new?register_as_member=0">会員登録せずに購入手続きへ進む</a>
+      {% endunless %}
     {% endif %}
 
   {% endif %}

auth > 会員ログイン/会員登録画面

ec_force/shop/customers/sessions/new.html.liquid
ec_force/shop/customers/sessions/new.html+smartphone.liquid

注意

2024/12/18更新 もあわせてご確認ください。

 <div id="customers-sessions-sign-in-view">
 <!-- ログインフォームの記述 -->
+{% unless auth_infra and auth_infra.login_only_auth_infra == true %}
   <form action="/shop/customers/sign_in" accept-charset="UTF-8" method="post">
 
     {{ 'notice' | flash: 'alert alert-success', 'text' }}
     {{ 'alert' | flash: 'alert alert-danger', 'text' }}
     {{ 'error' | flash: 'alert alert-danger', 'text' }}
 
     <!-- メールアドレス -->
   {% if line_settings['display_btn'] == '1' and encrypted_line_id == nil %}
     <!-- LINE ID 説明ポップアップ -->
     {{ line_settings['information_context'] }}
     <!-- LINE ID 連携ボタン(クラス) -->
     <a class="line-token-set-btn" href="#">LINEでログイン</a>
   {% endif %}
+{% endunless %}
 <!-- ログインフォームの記述ここまで -->
 
+ <!-- 認証基盤でのログインボタン -->
+{% if auth_infra %}
+  <a class="auth-infra-token-set-btn" href="#">認証基盤でログイン</a>
+{% endif %}
 
 <!-- 会員登録フォームの記述(任意)-->
+{% unless auth_infra and auth_infra.login_only_auth_infra == true and auth_infra_regist == nil %}
   <form action="/shop/customers" accept-charset="UTF-8" method="post">
     <!-- 送信ボタン -->
     <input type="submit" name="commit" value="保存" />
 
     <!-- TOPに戻るボタン(任意) -->
     <a href="/shop">戻る</a>
 
   </form>
+{% endunless %}
 <!-- 会員登録フォーム(任意)ここまで -->
 </div>

auth > 会員登録画面

ec_force/shop/customers/registrations/new.html.liquid
ec_force/shop/customers/registrations/new.html+smartphone.liquid

 <!-- 会員登録画面コンテナ -->
 <div id="customers-registrations-sign-up-view">
   <!-- 会員登録フォームの記述 -->
+{% unless auth_infra and auth_infra.login_only_auth_infra == true and auth_infra_regist == nil %}
   <form action="/shop/customers" accept-charset="UTF-8" method="post">
     {% if customer.error_messages != empty %}
         {% for error_message in customer.error_messages %}
           {{ error_message }}
         {% endfor %}
     {% endif %}
 
     <!-- お名前 -->
     <label for="customer_billing_address_attributes_name01">お名前</label>
     {% if shop_form_settings['name_1_field'] %}
-      <input class="validate[required]" type="text" value="" name="customer[billing_address_attributes][name01]" autocomplete="name" id="customer_billing_address_attributes_name01" />
+      <input class="validate[required]" type="text" value="{{ customer.billing_address.name01 }}" name="customer[billing_address_attributes][name01]" autocomplete="name" id="customer_billing_address_attributes_name01" />
     {% else %}
-      <input class="validate[required]" type="text" value="" name="customer[billing_address_attributes][name01]" autocomplete="family-name" id="customer_billing_address_attributes_name01" />
-      <input class="validate[required]" type="text" value="" name="customer[billing_address_attributes][name02]" autocomplete="given-name" id="customer_billing_address_attributes_name02" />
+      <input class="validate[required]" type="text" value="{{ customer.billing_address.name01 }}" name="customer[billing_address_attributes][name01]" autocomplete="family-name" id="customer_billing_address_attributes_name01" />
+      <input class="validate[required]" type="text" value="{{ customer.billing_address.name02 }}" name="customer[billing_address_attributes][name02]" autocomplete="given-name" id="customer_billing_address_attributes_name02" />
     {% endif %}
 
     <!-- フリガナ -->
     <label for="customer_billing_address_attributes_kana01">フリガナ</label>
     {% if shop_form_settings['kana_1_field'] %}
-        <input class="validate[required,custom[katakana]]" type="text" value="" name="customer[billing_address_attributes][kana01]" id="customer_billing_address_attributes_kana01" />
+        <input class="validate[required,custom[katakana]]" type="text" value="{{ customer.billing_address.kana01 }}" name="customer[billing_address_attributes][kana01]" id="customer_billing_address_attributes_kana01" />
     {% else %}
-        <input class="validate[required,custom[katakana]]" type="text" value="" name="customer[billing_address_attributes][kana01]" id="customer_billing_address_attributes_kana01" />
-        <input class="validate[required,custom[katakana]]" type="text" value="" name="customer[billing_address_attributes][kana02]" id="customer_billing_address_attributes_kana02" />
+        <input class="validate[required,custom[katakana]]" type="text" value="{{ customer.billing_address.kana01 }}" name="customer[billing_address_attributes][kana01]" id="customer_billing_address_attributes_kana01" />
+        <input class="validate[required,custom[katakana]]" type="text" value="{{ customer.billing_address.kana02 }}" name="customer[billing_address_attributes][kana02]" id="customer_billing_address_attributes_kana02" />
     {% endif %}
 
     <!-- 郵便番号 -->
     <label for="customer_billing_address_attributes_zip01">郵便番号</label>
     {% if shop_form_settings['zip_1_field'] %}
       <span>〒</span>
-      <input class="validate[required,custom[integer],minSize[7]]" type="tel" value="" name="customer[billing_address_attributes][zip01]" autocomplete="postal-code" id="customer_billing_address_attributes_zip01" maxlength='7' />
+      <input class="validate[required,custom[integer],minSize[7]]" type="tel" value={{ customer.billing_address.zip01 }}" name="customer[billing_address_attributes][zip01]" autocomplete="postal-code" id="customer_billing_address_attributes_zip01" maxlength='7' />
     {% else %}
       <span>〒</span>
-      <input class="validate[required,custom[integer],minSize[3]]" type="tel" value="" name="customer[billing_address_attributes][zip01]" autocomplete="postal-code" id="customer_billing_address_attributes_zip01" maxlength='3' />
+      <input class="validate[required,custom[integer],minSize[3]]" type="tel" value="{{ customer.billing_address.zip01 }}" name="customer[billing_address_attributes][zip01]" autocomplete="postal-code" id="customer_billing_address_attributes_zip01" maxlength='3' />
       <span>−</span>
-      <input class="validate[required,custom[integer],minSize[4]]" type="tel" value="" name="customer[billing_address_attributes][zip02]" autocomplete="none" id="customer_billing_address_attributes_zip02" maxlength='4' />
+      <input class="validate[required,custom[integer],minSize[4]]" type="tel" value="{{ customer.billing_address.zip02 }}" name="customer[billing_address_attributes][zip02]" autocomplete="none" id="customer_billing_address_attributes_zip02" maxlength='4' />
     {% endif %}
 
     <!-- 都道府県 -->
     <!-- 住所 -->
     <label for="customer_billing_address_attributes_addr01">住所</label>
-    <input class="validate[required]" type="text" name="customer[billing_address_attributes][addr01]" id="customer_billing_address_attributes_addr01" />
-    <input class="validate[required]" type="text" name="customer[billing_address_attributes][addr02]" id="customer_billing_address_attributes_addr02" />
+    <input class="validate[required]" type="text" value="{{ customer.billing_address.addr01 }}" name="customer[billing_address_attributes][addr01]" id="customer_billing_address_attributes_addr01" />
+    <input class="validate[required]" type="text" value="{{ customer.billing_address.addr02 }}" name="customer[billing_address_attributes][addr02]" id="customer_billing_address_attributes_addr02" />
     {% if shop_form_settings['addr03'] %}
-      <input type="text" name="customer[billing_address_attributes][addr03]" id="customer_billing_address_attributes_addr03" />
+      <input type="text" value="{{ customer.billing_address.addr03 }}" name="customer[billing_address_attributes][addr03]" id="customer_billing_address_attributes_addr03" />
     {% endif %}
 
     <!-- 電話番号 -->
     <label for="customer_billing_address_attributes_tel01">電話番号</label>
     {% if shop_form_settings['tel_1_field'] %}
-      <input class="validate[required,custom[integer]]" type="text" value="" name="customer[billing_address_attributes][tel01]" autocomplete="tel" id="customer_billing_address_attributes_tel01" maxlength='12' />
+      <input class="validate[required,custom[integer]]" type="text" value="{{ customer.billing_address.tel01 }}" name="customer[billing_address_attributes][tel01]" autocomplete="tel" id="customer_billing_address_attributes_tel01" maxlength='12' />
     {% else %}
-      <input class="validate[required,custom[integer]]" type="text" value="" name="customer[billing_address_attributes][tel01]" autocomplete="none" id="customer_billing_address_attributes_tel01" maxlength='5' />
+      <input class="validate[required,custom[integer]]" type="text" value="{{ customer.billing_address.tel01 }}" name="customer[billing_address_attributes][tel01]" autocomplete="none" id="customer_billing_address_attributes_tel01" maxlength='5' />
       <span>−</span>
-      <input class="validate[required,custom[integer]]" type="text" value="" name="customer[billing_address_attributes][tel02]" autocomplete="none" id="customer_billing_address_attributes_tel02" maxlength='4' />
+      <input class="validate[required,custom[integer]]" type="text" value="{{ customer.billing_address.tel02 }}" name="customer[billing_address_attributes][tel02]" autocomplete="none" id="customer_billing_address_attributes_tel02" maxlength='4' />
       <span>−</span>
-      <input class="validate[required,custom[integer]]" type="text" value="" name="customer[billing_address_attributes][tel03]" autocomplete="none" id="customer_billing_address_attributes_tel03" maxlength='4' />
+      <input class="validate[required,custom[integer]]" type="text" value="{{ customer.billing_address.tel03 }}" name="customer[billing_address_attributes][tel03]" autocomplete="none" id="customer_billing_address_attributes_tel03" maxlength='4' />
     {% endif %}
     {% unless shop_form_settings['email'] %}
       <span>※ご注文・発送に関するご連絡用にSMS受信可能な携帯電話番号をご入力ください。</span>
     {% endunless %}
 
     <!-- FAX番号(任意) -->
     {% if shop_form_settings['fax'] %}
       <label for="customer_billing_address_attributes_fax01">FAX番号</label>
       {% if shop_form_settings['fax_1_field'] %}
-        <input type="text" value="" name="customer[billing_address_attributes][fax01]" id="customer_billing_address_attributes_fax01" maxlength='12' />
+        <input type="text" value="{{ customer.billing_address.fax01 }}" name="customer[billing_address_attributes][fax01]" id="customer_billing_address_attributes_fax01" maxlength='12' />
       {% else %}
-        <input type="text" value="" name="customer[billing_address_attributes][fax01]" id="customer_billing_address_attributes_fax01" maxlength='5' />
+        <input type="text" value="{{ customer.billing_address.fax01 }}" name="customer[billing_address_attributes][fax01]" id="customer_billing_address_attributes_fax01" maxlength='5' />
         <span>−</span>
-        <input type="text" value="" name="customer[billing_address_attributes][fax02]" id="customer_billing_address_attributes_fax02" maxlength='4' />
+        <input type="text" value="{{ customer.billing_address.fax02 }}" name="customer[billing_address_attributes][fax02]" id="customer_billing_address_attributes_fax02" maxlength='4' />
         <span>−</span>
-        <input type="text" value="" name="customer[billing_address_attributes][fax03]" id="customer_billing_address_attributes_fax03" maxlength='4' />
+        <input type="text" value="{{ customer.billing_address.fax03 }}" name="customer[billing_address_attributes][fax03]" id="customer_billing_address_attributes_fax03" maxlength='4' />
       {% endif %}
     {% endif %}
 
     <!-- 会社名(任意) -->
     {% if shop_form_settings['company'] %}
       <label for="customer_billing_address_attributes_company_name">会社名</label>
-      <input type="text" value="" name="customer[billing_address_attributes][company_name]" autocomplete="organization" id="customer_billing_address_attributes_company_name">
+      <input type="text" value="{{ customer.billing_address.company_name }}" name="customer[billing_address_attributes][company_name]" autocomplete="organization" id="customer_billing_address_attributes_company_name">
     {% endif %}
 
     <!-- メールアドレス -->
     {% if shop_form_settings['email'] %}
       <label for="customer_email">メールアドレス</label>
-      <input class="validate[required,custom[email]] for_password_validate" type="text" name="customer[email]" autocomplete="email" id="customer_email" />
+      <input class="validate[required,custom[email]] for_password_validate" type="text" value="{{ customer.email }}" name="customer[email]" autocomplete="email" id="customer_email" />
     {% endif %}
 
     <!-- 性別 -->
+    {% unless auth_infra and auth_infra.login_only_auth_infra == true %}
       <!-- パスワード -->
       <label for="customer_password">パスワード</label>
       <input class="validate[required,custom[validatePasswordForCustomerByAdminSetting]]" placeholder="半角英数字8文字以上" type="password" name="customer[password]" id="customer_password" />
 
       <!-- パスワード(確認) -->
       {% if shop_form_settings["password_confirmation"] %}
         <label for="customer_password_confirmation">パスワード(確認)</label>
         <input class="validate[required,minSize[8],equals[customer_password]]" placeholder="半角英数字8文字以上" type="password" name="customer[password_confirmation]" id="customer_password_confirmation" />
       {% endif %}
+    {% endunless %}
 
     <!-- 連携用顧客番号 -->
     <!-- 利用規約 -->
+    {% unless auth_infra and auth_infra.login_only_auth_infra == true %}
       <label class='checkbox-inline' for='agree'>
         <input id='agree' {% if shop_form_settings['terms'] %}checked{% endif %} class='validate[required]' data-prompt-position='topLeft' data-errormessage='会員登録には、各種規約に同意していただく必要がございます。' name='agree' type='checkbox'>
         {{ shop_form_settings['customer_term_text'] }}
       </label>
+    {% endunless %}
 
     <!-- 送信ボタン -->
     <input type="submit" name="commit" value="保存" />
 
     <!-- TOPに戻るボタン(任意) -->
     <a href="/shop">戻る</a>
 
   </form>
+{% endunless %}
</div>

cart > 請求先住所

ec_force/shop/orders/_view_billing_information.html.liquid
ec_force/shop/orders/_view_billing_information.html+smartphone.liquid

   <!-- 同時に会員登録と購入を行う際のパスワード -->
   {% if guest_flag and customer_signed_in != true %}
+    {% unless auth_infra and auth_infra.login_only_auth_infra == true %}
       <!-- パスワード -->
       <label>パスワード</label>
       <input class="validate[required,custom[validatePasswordForCustomerByAdminSetting]]" placeholder="半角英数字8文字以上" type="password" name="order[customer_attributes][password]" value="" id="order_customer_attributes_password">
       <!-- パスワード(確認) -->
       {% if shop_form_settings["password_confirmation"] %}
         <label for="customer_password_confirmation">パスワード(確認)</label>
         <input class="validate[required,minSize[8],equals[order_customer_attributes_password]]" placeholder="半角英数字8文字以上" type="password" name="order[customer_attributes][password_confirmation]" id="order_customer_attributes_password_confirmation" />
       {% endif %}
+    {% endunless %}
   {% endif %}

shared_partial > sidebar

ec_force/shop/shared/_sidebar.html.liquid
ec_force/shop/shared/_sidebar.html+smartphone.liquid

   <!-- ログインフォーム -->
   {% if base_info.show_login_form_on_side_menu? %}
     {% unless customer_signed_in %}
+      {% unless auth_infra and auth_infra.login_only_auth_infra == true %}
         <form action="/shop/customers/sign_in" method="post">
 
           <!-- メールアドレス -->
           <input name="customer[email]" placeholder="メールアドレス" value="{{ line_email }}">
 
           <!-- パスワード -->
           <input name="customer[password]" placeholder="パスワード" type="password">
 
           <!-- ログイン状態を保持する -->
           <input name="customer[remember_me]" type="checkbox" value="1"> ログイン状態を保持する
 
           <!-- ログイン元を取得 -->
           <input type="hidden" name="sign_in_route" value="shop_customers">
 
           <!-- ログインボタン -->
           <input type="submit" value="ログイン">
         </form>
 
         {% if line_settings['display_btn'] == '1' %}
           {% if customer_signed_in == false and encrypted_line_id == nil %}
             <!-- LINE ID 説明ポップアップ -->
             {{ line_settings['information_context'] }}
             <!-- LINE ID 連携ボタン(リンク) -->
             <a class="line-token-set-btn" href="#">LINEでログイン</a>
           {% elsif customer_signed_in == true and current_customer.line_id? == false %}
             <!-- LINE ID 説明ポップアップ -->
             {{ line_settings['information_context'] }}
             <!-- LINE ID 連携ボタン(リンク) -->
             <a class="line-token-set-btn" href="#">LINE ID 連携</a>
           {% endif %}
         {% endif %}
       {% endunless %}
+
+      <!-- 認証基盤でのログインボタン -->
+      {% if auth_infra and auth_infra_regist == nil %}
+        <a class="auth-infra-token-set-btn" href="#">認証基盤でログイン</a>
+      {% endif %}
+    {% endunless %}
   {% endif %}