質問 > 管理機能 > 商品購入情報入力画面〜への性別表記について |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
Taka567 |
投稿日時: 2020/11/5 17:36
対応状況: −−−
|
新米 登録日: 2020/11/5 居住地: 東京都 投稿: 3 |
商品購入情報入力画面〜への性別表記について ▼テンプレート
[EC-CUBE] EC-CUBE4.0.4 [PHP] 7.2 [導入プラグインの有無] 特になし [カスタマイズの有無] ・会員登録機能を省略し全てゲスト購入として運用 ・会社名を必須に変更 [現象] ご注文手続き画面に性別を出力したい お世話になります。 過去スレッドを参考にさせていただいたのですが、解決できなかった為お力添えいただければと考え質問させていただきました。 【ゲスト購入時の画面に性別選択を必須にしたい】 ・現状、会員登録という機能を省略し商品購入時はnonmember.twigを読み込むようにしております。 その際、お客様情報の入力画面内に「性別」の表記を出したいと考えております。 元々ある「新規会員登録」ページ入力ページの性別のコード表記をそのまま利用したものの反映されませんでした。 ↓ <dl> <dt> {{ form_label(form.sex, '性別', { 'label_attr': { 'class': 'ec-label' }}) }} </dt> <dd> <div class="ec-radio{{ has_errors(form.sex) ? ' error' }}"> {{ form_widget(form.sex) }} {{ form_errors(form.sex) }} </div> </dd> </dl> また別方法で src/ECcube/Form/Type/Front/NonMemberType.php に ->add('sex', ChoiceType::class, [ 'choices' => [ ......... と定義して試すと入力画面には定義した選択肢は表示されましたが、確認画面には表示されず。 また、これだと本来管理画面で元々ある性別選択とは別物となるのではないかと間がております。 こちら同じようなケースを対応されたことがある方がいらっしゃれば、ご教示いただけましたら幸いです。 よろしくお願いいたします。 |
umebius |
投稿日時: 2020/11/6 19:27
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 商品購入情報入力画面〜への性別表記について 確認画面というのは注文確認画面のことですかね。
だとすると仕組みが別ですのでShopping/index.twigを結構修正する必要があります。 この辺りなど。 https://github.com/EC-CUBE/ec-cube/blob/4.0.4/src/Eccube/Resource/template/default/Shopping/index.twig#L164 また、注文確認画面には非会員情報の更新機能があるので、そちらも対応が必要です。 https://github.com/EC-CUBE/ec-cube/blob/4.0.4/src/Eccube/Controller/NonMemberShoppingController.php#L154
|
Taka567 |
投稿日時: 2020/11/6 20:12
対応状況: −−−
|
新米 登録日: 2020/11/5 居住地: 東京都 投稿: 3 |
Re: 商品購入情報入力画面〜への性別表記について ご回答ありがとうございます。
ご説明不足で失礼しました。おっしゃる通り注文確認画面です。 現在は、 Shopping/nonmember.twigに{{ form_widget(form.sex) }}などを記述し、 NonMemberType.phpに「Eccube\Form\Type\Master\SexType」を読み込ませた上で ->add('sex', SexType::class, [ ・・・・ を追記することにより、お客様情報の入力ページ(URL/shopping/nonmember)には性別の選択欄を出力させることができました。 注文確認画面への出力につきましては、ご教示いただいた /Shopping/index.twig へ{{ Order.sex }}などをそのまま記述しても表記されなかったので このあたりが、 /Controller/NonMemberShoppingController.php ここに関連しているのでしょうか。 よろしくお願いいたします。 |
umebius |
投稿日時: 2020/11/6 20:28
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 商品購入情報入力画面〜への性別表記について そうですね、この辺りでCustomerに性別をセットしてやればOrderには勝手に登録されないでしょうか?
https://github.com/EC-CUBE/ec-cube/blob/4.0.4/src/Eccube/Controller/NonMemberShoppingController.php#L110-L121 あとはPrefと同じようにセッションから取り出した後で再設定してやらないとエラーになるかもしれないですね。 https://github.com/EC-CUBE/ec-cube/blob/4.0.4/src/Eccube/Service/OrderHelper.php#L241
|
Taka567 |
投稿日時: 2020/11/7 13:20
対応状況: −−−
|
新米 登録日: 2020/11/5 居住地: 東京都 投稿: 3 |
Re: 商品購入情報入力画面〜への性別表記について ありがとうございます。
NonMemberShoppingController.php の3箇所にセットしたものの他の項目と同じくOrderを記述しても画面には出力されず。 また、OrderHelper.phpにも追加記述したものの変化はありませんでした。 私も一つづつ編集しながら探して行ってみますが、umebiusさんが他にも何か可能性のあるファイルに心当たりがあればまたご教示いただけると嬉しい限りです。 いずれは注文メールの自動返信の方にも出力していくつもりなので、それはまた改めて一つづつクリアしていこうと思います。 umebiusさん、ご丁寧にありがとうございます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |