質問 > フロント機能 > 非会員登録から注文入力画面へ遷移した後の注文者編集で生年月日を追加 |
フロント機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
Rights |
投稿日時: 2024/6/28 14:11
対応状況: 解決済
|
一人前 登録日: 2019/3/12 居住地: 投稿: 114 |
非会員登録から注文入力画面へ遷移した後の注文者編集で生年月日を追加 ▼テンプレート
[EC-CUBE]4.2 非会員購入で、生年月日を必須にして注文画面へ 注文者情報に生年月日の表示と変更を行いたいのですが、 非会員情報の入力フォームから、注文画面に入力した生年月日の値が渡らない(取得できていない)のですが、 app/template/default/Shopping/nonmember.twig {# ▼追記部分の抜粋▼ #} <dl> <dt> {{ form_label(form.birth, '生年月日', { 'label_attr': {'class': 'ec-label' }}) }} </dt> <dd> <div class="ec-birth{{ has_errors(form.birth) ? ' error' }}"> {{ form_widget(form.birth.year) }}<span>/</span> {{ form_widget(form.birth.month) }}<span>/</span> {{ form_widget(form.birth.day) }} {{ form_errors(form.birth) }} </div> </dd> </dl> {# ▲追記部分の抜粋▲ #} app/template/default/Shopping/index.twig <div class="ec-orderAccount__account non-customer-display"> <p class="ec-halfInput">{{ ''|trans }}<span class="customer-edit customer-name01">{{ Order.name01 }}</span> <span class="customer-edit customer-name02">{{ Order.name02 }}</span>{{ ' 様'|trans }}</p> <p class="ec-halfInput"><span class="customer-edit customer-kana01">{{ Order.kana01 }}</span> <span class="customer-edit customer-kana02">{{ Order.kana02 }}</span></p> <p class="ec-input"><span class="customer-edit customer-company_name">{{ Order.companyName }}</span></p> <p class="ec-zipInput">〒<span class="customer-edit customer-postal_code">{{ Order.postal_code }}</span></p> <p class="ec-input"><span class="customer-edit customer-pref">{{ Order.pref }}</span><span class="customer-edit customer-addr01">{{ Order.addr01 }}</span><span class="customer-edit customer-addr02">{{ Order.addr02 }}</span></p> <p class="ec-telInput"><span class="customer-edit customer-phone_number">{{ Order.phone_number }}</span></p> <p class="ec-input"><span class="customer-edit customer-email">{{ Order.email }}</span></p> {# ▼追記部分▼ #} <p class="ec-birth"><span class="customer-edit customer-birth">{{ Order.birth }}</span></p> {# ▲追記部分▲ #} </div> ・ ・ ・ <dl> <dt> <label class="ec-label required">{{ 'メールアドレス'|trans }}</label> <span class="ec-required">{{ '必須'|trans }}</span> </dt> <dd> <div class="ec-input"> <span class="customer-form customer-email"></span> </div> </dd> </dl> <dl> <dt> <label class="ec-label required">{{ '生年月日'|trans }}</label> <span class="ec-required">{{ '必須'|trans }}</span> </dt> <dd> <div class="ec-birth"> <span class="customer-form customer-birth"></span> </div> </dd> </dl> </div> <div class="mod-button" style="display:none;"> <span id="customer-ok"><button type="button" class="ec-inlineBtn">{{ 'OK'|trans }}</button></span> <span id="customer-cancel"><button type="button" class="ec-inlineBtn">{{ 'キャンセル'|trans }}</button></span> </div> <input type="hidden" id="customer-name01" class="customer-in" name="customer_name01" value="{{ Order.name01 }}"> <input type="hidden" id="customer-name02" class="customer-in" name="customer_name02" value="{{ Order.name02 }}"> <input type="hidden" id="customer-kana01" class="customer-in" name="customer_kana01" value="{{ Order.kana01 }}"> <input type="hidden" id="customer-kana02" class="customer-in" name="customer_kana02" value="{{ Order.kana02 }}"> <input type="hidden" id="customer-company-name" class="customer-in" name="customer_company_name" value="{{ Order.companyName }}"> <input type="hidden" id="customer-postal_code" class="customer-in" name="customer_postal_code" value="{{ Order.postal_code }}"> <input type="hidden" id="customer-pref" class="customer-in" name="customer_pref" value="{{ Order.pref }}"> <input type="hidden" id="customer-addr01" class="customer-in" name="customer_addr01" value="{{ Order.addr01 }}"> <input type="hidden" id="customer-addr02" class="customer-in" name="customer_addr02" value="{{ Order.addr02 }}"> <input type="hidden" id="customer-phone_number" class="customer-in" name="customer_phone_number" value="{{ Order.phone_number }}"> <input type="hidden" id="customer-email" class="customer-in" name="customer_email" value="{{ Order.email }}"> {# ▼追記部分▼ #} <input type="hidden" id="customer-birth" class="customer-in" name="customer_birth" value="{{ Order.birth }}"> {# ▲追記部分▲ #} /Customize/Service/OrderHelper.php function getNonMember 298行目の$Customerに、->setBirth($data['birth']);追加 /Customize/Controller/NonMemberShoppingController.php use OrderHelper.phpのパスを変更 function customerValidation に、以下を追加 $errors[] = $this->validator->validate( $data['customer_birth'], [ new Assert\NotBlank(), new Assert\Date(['message' => 'form_error.numeric_only']), ] ); /Customize/Controller/ShoppingController.php use OrderHelper.phpのパスを変更 nonmember.twigでは、form_widgetを使っていますが、注文画面側では構造が違うようで、日付の分割処理(セレクトボックスで年月日に分ける場合)も別途作成が必要でしょうか? |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
» 非会員登録から注文入力画面へ遷移した後の注文者編集で生年月日を追加 | Rights | 2024/6/28 14:11 |
Re: 非会員登録から注文入力画面へ遷移した後の注文者編集で生年月日を追加 | mcontact | 2024/6/29 10:10 |
Re: 非会員登録から注文入力画面へ遷移した後の注文者編集で生年月日を追加 | Rights | 2024/7/2 12:32 |
Re: 非会員登録から注文入力画面へ遷移した後の注文者編集で生年月日を追加 | Rights | 2024/7/5 15:25 |