バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ゲスト購入画面に国の選択を追加したい

フロント機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
mcontact
投稿日時: 2024/6/4 17:51
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1638
Re: ゲスト購入画面に国の選択を追加したい
githubに、都道府県項目をセレクトボックス化する場合の、フォーム項目生成している箇所の改修箇所をコメントしているものですが、ざっと見る限りsogatatさんが提示しているコードでは対応できないです。


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

mcontact
投稿日時: 2024/6/4 17:47
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1638
Re: ゲスト購入画面に国の選択を追加したい
> ではアプローチ方法を変えて、もし使えるならば FORM_COUNTRY_ENABLEパラメーターを設定して国選択させておいて、その場合ならば商品購入画面の編集ボタンを押した場合でも国選択のセレクトボックスが出せるでしょうか

FORM_COUNTRY_ENABLEパラメーターは、EC-CUBE2系のお話ですのでEC-CUBE4系では対応できないです。


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

h_tanaka
投稿日時: 2024/6/4 16:48
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1943
Re: ゲスト購入画面に国の選択を追加したい
GitHub ではマージ前なのでなんともいえないです。。

質問される前に試してみてもらえますか。
その上でエラー等出るようならエラー内容を提示くださいませ。


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

sogatat
投稿日時: 2024/6/4 16:41
対応状況: −−−
半人前
登録日: 2024/4/14
居住地:
投稿: 22
Re: ゲスト購入画面に国の選択を追加したい
ご回答ありがとうございます。

教えていただいたgithubの内容を見たら下記のようなアプローチでもできるのかな思ったのですが、下記のようなアプローチでできそうでしょうか。

app/template/default/Shopping/index.twig:35

$('#customer').click(function() {
                $(edit).each(function(index) {
                    var name = $(this).text();
                    {# カスタマイズ:customer-international_phone_number_prefixクラスを持つ要素だった場合はselect型にする #}
                    {# var input = $('<input id="edit' + index + '" type="text" />').val(name); #}
                    if ($(this).hasClass('customer-international_phone_number_prefix')) {
                        var input = $('<input id="edit' + index + '" type="select" />').val(name);
                    } else {
                        var input = $('<input id="edit' + index + '" type="text" />').val(name);
                    }
                    $(form[index]).empty().append(input);
                });

                $('.non-customer-display').hide();
                $('.non-customer-edit').show();
                $('.mod-button').show();
            });
h_tanaka
投稿日時: 2024/6/4 16:06
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1943
Re: ゲスト購入画面に国の選択を追加したい
質問が変わっていないように思うのですが、
商品購入画面でゲスト情報編集時にセレクトボックスを表示するのは難しいと思います。
https://github.com/EC-CUBE/ec-cube/issues/6067
https://github.com/EC-CUBE/ec-cube/issues/3949


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

sogatat
投稿日時: 2024/6/4 15:59
対応状況: −−−
半人前
登録日: 2024/4/14
居住地:
投稿: 22
Re: ゲスト購入画面に国の選択を追加したい
ご回答ありがとうございます。
説明がわかりにくくて失礼いたしました。

やはりこの画面でセレクトボックスを表示するのはなかなか難しいのですね。

ではアプローチ方法を変えて、もし使えるならば FORM_COUNTRY_ENABLEパラメーターを設定して国選択させておいて、その場合ならば商品購入画面の編集ボタンを押した場合でも国選択のセレクトボックスが出せるでしょうか
h_tanaka
投稿日時: 2024/6/4 15:49
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1943
Re: ゲスト購入画面に国の選択を追加したい
訂正します。
その次の商品購入画面ですね。
そのページでは確かに、都道府県を見ても分かる通りセレクトボックスではなく入力フィールドになります。

このページでセレクトボックスを表示するようにするようカスタマイズするより、新規でゲスト編集ページを作成してそこに遷移させるほうがやりやすいかもしれません。


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

h_tanaka
投稿日時: 2024/6/4 15:47
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1943
Re: ゲスト購入画面に国の選択を追加したい
twig 側でフォームをレンダリングする必要があります。

<div class="ec-select{{ has_errors(form.international_phone_number_prefix) ? ' error' }}">
{{ form_widget(form.international_phone_number_prefix) }}
{{ form_errors(form.international_phone_number_prefix) }}
</div>


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

sogatat
投稿日時: 2024/6/4 15:39
対応状況: −−−
半人前
登録日: 2024/4/14
居住地:
投稿: 22
Re: ゲスト購入画面に国の選択を追加したい
ご返信ありがとうございます。

ゲスト購入画面ではChoiceTypeでセレクトボックスを作成しております。
app/template/default/Shopping/nonmember.twig

public function buildForm(FormBuilderInterface $builder, array $options)
    {
        //国際電話番号フレフィクスフィールド
        $builder->add('international_phone_number_prefix', ChoiceType::class, [
            'placeholder' => 'common.select__unspecified',
            'choices' => $this->CountryChoices,
            'required' => true,
        ]);


ところが次の商品購入画面に遷移すると画面上部にゲスト購入画面の入力内容が表示されており、そこに「編集」ボタンがあると思います。これを押した場合に以下のようになっています。


追加した国番号
app/template/default/Shopping/index.twig

<dl>
                                <dt>
                                    <label class="ec-label required">{{ '国番号'|trans }}</label>
                                    <span class="ec-required">{{ 'common.required'|trans }}</span>
                                </dt>
                                <dd>
                                    <div class="ec-input">
                                        <span class="customer-form customer-international_phone_number_prefix"></span>
                                    </div>
                                </dd>
                            </dl>


同じくその内容

<input type="hidden" id="customer-international_phone_number_prefix" class="customer-in" name="customer_international_phone_number_prefix" value="{{ Customer.international_phone_number_prefix }}">
                        <input type="hidden" id="customer-phone_number" class="customer-in" name="customer_phone_number" value="{{ Order.phone_number }}">

このinput type="hidden"のテキストフィールドの国番号をセレクトボックスにする方法をお教え願えないでしょうか
h_tanaka
投稿日時: 2024/6/4 15:25
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1943
Re: ゲスト購入画面に国の選択を追加したい
セレクトボックスを設置するには、 Symfony の ChoiceType を使用します。
https://zenn.dev/ttskch/articles/5b85d1c1c8afcd


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

« 1 (2) 3 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は100,903名です
総投稿数は112,262件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2327
5
umebius
2085
6
h_tanaka
1943
7
yuh
1899
8
mcontact
1638
9
red
1579
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
805
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
balisys
502


ネットショップの壺

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

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