バージョン選択

フォーラム

メニュー

オンライン状況

41 人のユーザが現在オンラインです。 (31 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 41
もっと...

サイト内検索

質問 > 管理機能 > 商品購入情報入力画面〜への性別表記について

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
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


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

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


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

Taka567
投稿日時: 2020/11/7 13:20
対応状況: −−−
新米
登録日: 2020/11/5
居住地: 東京都
投稿: 3
Re: 商品購入情報入力画面〜への性別表記について
ありがとうございます。

NonMemberShoppingController.php の3箇所にセットしたものの他の項目と同じくOrderを記述しても画面には出力されず。

また、OrderHelper.phpにも追加記述したものの変化はありませんでした。

私も一つづつ編集しながら探して行ってみますが、umebiusさんが他にも何か可能性のあるファイルに心当たりがあればまたご教示いただけると嬉しい限りです。


いずれは注文メールの自動返信の方にも出力していくつもりなので、それはまた改めて一つづつクリアしていこうと思います。

umebiusさん、ご丁寧にありがとうございます。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,801名です
総投稿数は109,972件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1644
8
red
1570
9
mcontact
1289
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.