バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 建物・ビル名の必須登録をなくしたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
fiveh
投稿日時: 2021/1/12 0:18
対応状況: −−−
新米
登録日: 2021/1/12
居住地:
投稿: 5
建物・ビル名の必須登録をなくしたい
EC-CUBE4.0.5、デフォルトのテンプレートを使用しています。

会員の新規登録時、およびゲスト購入時に住所を入力しますが、「建物・ビル名・部屋番号」の[addr02]入力欄が登録必須になっています。

EC-CUBE4系で、この項目の必須を無効にするにはどのように設定すればよいでしょうか?

過去のEC-CUBE3系にあったスレッドを参考に、AddressType.phpファイル内を、
$options['addr02_options']['required'] = $options['false'];
このように変更してみたりしましたが、うまくいきませんでした。

どうぞよろしくお願いいたします。
Diezon
投稿日時: 2021/1/12 10:19
対応状況: −−−
常連
登録日: 2020/10/12
居住地:
投稿: 52
Re: 建物・ビル名の必須登録をなくしたい
fiveh 様

お世話になります。
おそらくAddressType.phpファイル内の以下コードをコメントアウトすることで、期待通りの動作となるかと思います。

$options['addr02_options']['constraints'] = array_merge([
new Assert\NotBlank([]),
], $options['addr02_options']['constraints']);

ご確認お願いいたします。
fiveh
投稿日時: 2021/1/12 10:58
対応状況: −−−
新米
登録日: 2021/1/12
居住地:
投稿: 5
Re: 建物・ビル名の必須登録をなくしたい
ご返信ありがとうございます。

いただいた内容で該当箇所をコメントアウトしたところ、「新規会員登録「「ゲストでの購入」の住所入力時に、建物・ビルを入力せずに次へ進むことができました。ありがとうございます。

ただ1点、建物・ビルを入力しないとNGがところがありました。

商品をカートにいれ→レジに進む→ゲスト購入→氏名・住所入力→ご注文手続きページで、
お客様情報→変更ボタン→建物・ビルの項目を空欄にしてOKボタンを押すと、「更新に失敗しました。入力内容を確認してください。」と、メッセージがでて更新を反映することができませんでした。

こちら対応わかりましたらご教授いただけると助かります。


現状のファイルの変更箇所は、以下になります。
過去の記事も参考に、他ファイルの箇所もコメントアウトしました。

●AddressType.php

$options['addr02_options']['required'] = $options['false'];

// $options['addr02_options']['constraints'] = array_merge([
// new Assert\NotBlank([]),
// ], $options['addr02_options']['constraints']);


●OrderType.php

'addr02_options' => [
'required' => false,
// 'constraints' => [
// new Assert\NotBlank(),
// new Assert\Length([
// 'max' => $this->eccubeConfig['eccube_mtext_len'],
// ]),
// ],
'attr' => ['class' => 'p-extended-address'],
],


●ShippingType.php

'addr02_options' => [
'required' => false,
// 'constraints' => [
// new Assert\NotBlank(),
// new Assert\Length([
// 'max' => $this->eccubeConfig['eccube_mtext_len'],
// ]),
// ],
'attr' => [
'class' => 'p-extended-address',
'placeholder' => 'admin.common.address_sample_02',
],
],

Diezon
投稿日時: 2021/1/16 16:47
対応状況: −−−
常連
登録日: 2020/10/12
居住地:
投稿: 52
Re: 建物・ビル名の必須登録をなくしたい
fiveh様

ゲスト購入でのエラーの件、エラー文等わからないので確実では無いのですが、
src/Eccube/Form/Type/Front/NonmemberType.php
の69行目の以下をコメントアウトで動作しませんでしょうか。
'required' => true,

ご確認お願いいたします。
fiveh
投稿日時: 2021/1/16 17:37
対応状況: −−−
新米
登録日: 2021/1/12
居住地:
投稿: 5
Re: 建物・ビル名の必須登録をなくしたい
ご連絡ありがとうございます。いただいた内容で試しました。

●変更ファイル:NonMemberType.php
●変更箇所:
 ->add('address', AddressType::class, [
 // 'required' => true,
 ])

こちらの変更で試したところ「OK」ボタンを押した際に
「更新に失敗しました。入力内容を確認してください。」
のメッセージがでてしまい、住所等の更新も反映できませんでした。
(建物・ビル名の欄になにか文字をいれると「OK」ボタンで登録反映できます)

結果、残念ながらコメントアウト前と変わらない結果となりました。

このEC-CUBEの建物・ビル名の入力が必須の仕様は、戸建てなど自宅の人にとっては、無記入になるものかと思いますが、なぜ必須入力仕様になっているのでしょう・・


Diezon
投稿日時: 2021/1/18 10:51
対応状況: −−−
常連
登録日: 2020/10/12
居住地:
投稿: 52
Re: 建物・ビル名の必須登録をなくしたい
fiveh 様

すみません、こちら以下画面が表示される際のエラーログはどのように出力されておりますでしょうか。

>「更新に失敗しました。入力内容を確認してください。」

fiveh
投稿日時: 2021/1/18 11:31
対応状況: −−−
新米
登録日: 2021/1/12
居住地:
投稿: 5
Re: 建物・ビル名の必須登録をなくしたい
こちらサーバーのエラーログを確認しましたがログにはでておりませんでした。

その後、こちらのスレッドをみつけまして内容として同じ問題になるかと思い、Controllerフォルダ内のファイルを確認したところ、以下のファイル内の箇所をコメントアウトすることで、建物欄を無記入でも更新ができるようになりましたのでご報告します。

●src/Eccube/Controller/NonMemberShoppingController.php

// $errors[] = $this->validator->validate(
// $data['customer_addr02'],
// [
// new Assert\NotBlank(),
// new Assert\Length(['max' => $this->eccubeConfig['eccube_address2_len']]),
// ]
// );

Diezon
投稿日時: 2021/1/18 13:33
対応状況: −−−
常連
登録日: 2020/10/12
居住地:
投稿: 52
Re: 建物・ビル名の必須登録をなくしたい
fiveh  様

NonMemberShoppingController.phpでnew Assert\NotBlank(),を指定していたのですね!

ご共有ありがとうございます!
kishikawa
投稿日時: 2021/1/18 15:21
対応状況: −−−
一人前
登録日: 2018/12/20
居住地: 松戸
投稿: 89
Re: 建物・ビル名の必須登録をなくしたい
// new Assert\NotBlank(),

こちらだけコメントアウトすればいい気もします。
全部コメントアウトすると文字数チェックがなくなってしまうので・・・

// new Assert\Length(['max' => $this->eccubeConfig['eccube_address2_len']]),

こちらで文字数チェックをしています。


----------------
株式会社ジョーレン
EC-CUBEプラチナパートナー

スピード構築でEC事業をサポート致します
EC-CUBE2系、3系、4系構築実績あり

ホームページ

fiveh
投稿日時: 2021/1/18 17:55
対応状況: −−−
新米
登録日: 2021/1/12
居住地:
投稿: 5
Re: 建物・ビル名の必須登録をなくしたい
ご指摘ありがとうございます。

// new Assert\NotBlank(),
のみコメントアウトで、建物欄を無記入で更新確認しております。
※登録文字が長すぎるものだと更新できないことも確認しました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.