• ベストアンサー

WooCommerceで支払いフォームの電話必須に

WordpressのカートシステムプラグインWooCommerceで 支払いページの入力フォームのラベルをカスタムするのに、 Checkout Fields Manager for WooCommerceという無料プラグインがありますが、それが、 日本語最適化無料プログラムとバッティングするのか、 上手く働きません、という記事を読みました。 事実、私もそこでつまづいており、 支払いフォームのお客様の電話番号を「オプション」から「必須」に換えたいのですが、変更できません。 項目として、電話番号のみ必須になってくれれば今の所問題ないのですが、その方法を教えてくださいませんか? ちなみに、ChatGPTの方で教えて戴いた方法を記載しておきますが、 ↓以下が生成AIの回答でした。 まず、functions.phpファイルを編集するか、サイト専用のカスタムプラグインを作成します。 php // functions.php ファイルか、カスタムプラグイン内で以下のコードを追加 // チェックアウトページのフックを利用してフォームをカスタマイズ add_filter('woocommerce_checkout_fields', 'customize_checkout_fields'); function customize_checkout_fields($fields) { // 電話番号の部分を必須に設定 $fields['billing']['billing_phone']['required'] = true; return $fields; } このコードでは、woocommerce_checkout_fields フィルターを使用して、チェックアウトページのフォームをカスタマイズしています。billing_phone フィールドの required プロパティを true に設定することで、電話番号の入力を必須に変更します。 ↑以上、functions.phpにコピーして貼り付けたのですが、 上手く動きませんでした。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

設定がうまくいかないとイライラしますよね。 Chat GPTのアドバイスはかなり的を得ている場合があるので、その方法がうまく行かないというのは厄介ですね。 プラグインについては、手順通りにやってもうまくいかなかったりすることがあるので、つまずいた場合は初期状態からやり直すと案外うまくいったりする場合があります。 OSを最新に ↓ (環境や関係ファイルのバックアップをとった上で)ソフト、アプリの削除、再インストール。 ↓ プラグインの再設定。 ↓ フォームの再設定 ↓ Chat GPTさんのアドバイス実行 これでうまく行かない場合は、他のプラグインを試すとかどうでしょうか? “ 決済プラグイン“ https://wc.artws.info/product-category/payment-methods/ “WooCommerceで決済ページのフォームをカスタマイズする方法:Checkout Fields Manager for WooCommerceの使い方“ https://www.youtube.com/watch?v=dk6hRWFqq7k “ WooCommerceの決済ページをカスタマイズ・デザインする方法“ https://kohsukenemoto.com/woocommerce/how-to-design-woocommerce-checkout-page/ (画像引用) https://en.wikipedia.org/wiki/WooCommerce 良い方向に進みますように! 参考になれば幸いです。

orange-house
質問者

お礼

そうなんですよ、 うまくいかないので、画面を行ったり戻ったりで、 一向に何も進まないですので、やはり気分は良くないです。 お気遣いありがとうございます。 ChatGPTサンのアドバイスは的を得ているのですか?! そうなのですね、そういう時代なのか・・・スゴイですね。 はい、 教えていただいたように、OSから何から全てのバージョンを最新にしてやってみましたが、上手くいきませんでした。 教えていただいたURL先の動画にある、チェックアウトのプラグインも試しましたが、全く動作いたしません。 困りました。 あとは、ファイルを詳しく見ていき、どこにそれが書かれているのかを見つけないと修正できそうにないですね。 とりあえず頑張ります。 ご協力ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • WordPressのWooCommerceカスタム

    https://okwave.jp/qa/q10255240.html ↑の質問にて、 AIエージェントのあいサンにご回答を戴きました。 以下が、その際の回答でした。 ----------------------------------------------------------------------- ```php add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' ); function custom_override_checkout_fields( $fields ) { // 名前のフィールドを統合 $fields['billing']['billing_first_name'] = array( 'label' => '名前', 'placeholder' => '名前を入力してください', 'required' => true, 'class' => array('form-row-wide'), 'clear' => true ); // 姓のフィールドを削除 unset($fields['billing']['billing_last_name']); // 会社名のフィールドを追加 $fields['billing']['billing_company'] = array( 'label' => '会社名', 'placeholder' => '会社名を入力してください', 'required' => false, 'class' => array('form-row-wide'), 'clear' => true ); // 国のフィールドを削除 unset($fields['billing']['billing_country']); // 電話番号を必須にする $fields['billing']['billing_phone']['required'] = true; return $fields; } ``` -------------------------------------------------------------------- どこまでがプログラムなのかが分かりづらいと思いましたので、 「-」で仕切りを作りました。 さて、お答えいただいたご回答を私が作っているページの、 functions.phpに記載して保存しようとしたところ、 functions.php ファイルの24行目でエラーが発生したため、PHP コードの変更が適用されませんでした。修正して再度保存してください。 syntax error, unexpected '`' という表示が出て先に進む事ができませんでした。 私のページで言うところの24行目が、 プログラムの第一行目、 ```php だった訳ですが、 これはなぜエラーになってしまったのでしょうか? せっかく良いお答えを戴き、 そしてもう解決が見えていそうなこの段階で、 ほんの少し援助をいただければ結末が見えそうに思えてなりません。 申し訳ありませんが、 エラーにならないプログラムを教えていただけないでしょうか?

  • WordPressのWooCommerceカスタム

    https://okwave.jp/qa/q10255240.html ↑の質問にて、 AIエージェントのあいサンにご回答を戴きました。 以下が、その際の回答でした。 ----------------------------------------------------------------------- ```php add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' ); function custom_override_checkout_fields( $fields ) { // 名前のフィールドを統合 $fields['billing']['billing_first_name'] = array( 'label' => '名前', 'placeholder' => '名前を入力してください', 'required' => true, 'class' => array('form-row-wide'), 'clear' => true ); // 姓のフィールドを削除 unset($fields['billing']['billing_last_name']); // 会社名のフィールドを追加 $fields['billing']['billing_company'] = array( 'label' => '会社名', 'placeholder' => '会社名を入力してください', 'required' => false, 'class' => array('form-row-wide'), 'clear' => true ); // 国のフィールドを削除 unset($fields['billing']['billing_country']); // 電話番号を必須にする $fields['billing']['billing_phone']['required'] = true; return $fields; } ``` -------------------------------------------------------------------- どこまでがプログラムなのかが分かりづらいと思いましたので、 「-」で仕切りを作りました。 さて、お答えいただいたご回答を私が作っているページの、 functions.phpに記載して保存しようとしたところ、 functions.php ファイルの24行目でエラーが発生したため、PHP コードの変更が適用されませんでした。修正して再度保存してください。 syntax error, unexpected '`' という表示が出て先に進む事ができませんでした。 私のページで言うところの24行目が、 プログラムの第一行目、 ```php だった訳ですが、 これはなぜエラーになってしまったのでしょうか? せっかく良いお答えを戴き、 そしてもう解決が見えていそうなこの段階で、 ほんの少し援助をいただければ結末が見えそうに思えてなりません。 申し訳ありませんが、 エラーにならないプログラムを教えていただけないでしょうか? この質問にご回答をいただきました。 ---------------------------------------------------- このソースをそのまま使う場合は、最初の ```php を <?php に、最後の ``` を ?> に変更して使います。 しかしながら、質問者さんはすでにある自分のプログラムに追加したようですので、その場合は、```で挟まれた間の部分を使うようにしてください。 (```の行は含めないでください) ------------------------------------------------- このご回答の通り、 <?php と ?> の部分を削除して進むと、 ちゃんと保存ができたのですが、 その後、Wordpressより「サイトで技術的な問題が発生しました」のメールが来ました。 幸い、エディター画面を出したままにしていたので、すぐさま新規入力分を削除して対応できたのですが、 結果的に、お客様入力画面をカスタマイズできませんでしたので、 問題は解決しておりません。 もうあと一歩だと思うので、 どなたかお力添えいただけないでしょうか?

  • WordPressのWooCommerceカスタム

    WordPressでホームページを作成しています。 プラグインのWooCommerceを使って、カートシステムを作ったのですが、その決済ページの項目が思うようになりません。 プラグインの「Checkout Field Editor」を使用しても何も変わりません。 困っているので、力を貸していただけると助かります。 決済ページのお客様の情報入力が、 デフォルトでは 名[    ] 姓[ ] 住所[ ] アパート[ ] 国[ ] 市町村[ ] 県[ ] 郵便番号[ ] 電話[ ] となっているのですが、 名前[ ] 住所[ ] 会社名[ ] 市町村[ ] 県[ ] 郵便番号[ ] 電話[ ] にカスタマイズしたいです。 つまり、 姓と名、別々の項目になっているのを一つにし、 アパート名の所を会社名にして、 国の項目を削除、 そしてできる事ならば、必須にならない電話番号を必須入力に変えたいです。 というのをいろいろな方法で自分としては努力したつもりなのですが、 変わらないので、変更の仕方をもしよければ教えて戴けませんか? 検索した限りでは、 他にも同じ状態で困っている人がいらっしゃるみたいなので、 どうか詳しい方、アドバイスでも結構ですお力添えいただけると嬉しいです。

  • 個人輸入時の電話番号入力について

    アメリカのHPから商品を購入しようと思っています。 商品をカートに入れてチェックアウトをしようとしましたが、「Billing phone number - do not include country code in international phone numbers」と出て弾かれました。 電話番号入力がマズかったのだと思いますが、ここは携帯電話の番号ではいけないのでしょうか?もしくは入力の仕方が違うのでしょうか。 参考にそのHPを貼り付けます。 http://www.championnutrition.com/

  • PHPでのフォーム

    よろしくお願いします。 PHPでフォームを作成しております。 例えば電話番号の入力チェックを行う際にはpreg_matchを使用して可能かと思いますが 電話番号の項目が必須ではなく、入力された時のみにチェックするにはどのように記述すればよいでしょうか?

    • ベストアンサー
    • PHP
  • JQueryで2つのテキストフィールドの片方必須

    お世話になります。 JQueryを使ってフォームのValidationを行っています。 2つのテキストフィールドの内、どちらか一方は必須フィールドにしたいのですが、その様なプラグインはありますでしょうか? 具体的には、固定電話番号と携帯電話番号のどちらかまたは両方に入力があった時のみOKとしたいのですが…

  • 送信側が必須項目を選択できるメールフォーム

    メールフォームの送信条件に「必須項目」がありますよね? メールアドレスや電話番号がそうだと思います。 その必須項目は初期段階で設定されているじゃないですか? この必須項目を送信側が選択出来るフリーのメールフォームCGIがあれば教えて頂きたいのですが・・・ 例えば「メールアドレスは教えても良いけど電話番号は教えられない人」と「メールアドレスは教えたくないけど電話番号は教えてもいい人」 まぁ必須項目を無くして、一文「いずれかを入力してください」と入れておけば良いだけかも知れませんが・・・ よろしくお願い致します。

    • 締切済み
    • CGI
  • 応募フォームなどの住所欄で最近は全角必須が多いのはなぜ

    サイトで応募フォームなどに個人情報などを書くとき、住所欄などで最近は全角文字必須が多いのはなぜですか? 郵便番号や電話番号は半角必須です。 理由をご存知の方、教えてもらえないでしょうか。

    • ベストアンサー
    • CGI
  • REQUIRED_FIELDSのこと

    HP上でアンケートを作ったのですが、一般のフォームの部分の必須事項はREQUIRED_FIELDSで入力して出来たのですが、ボタンで選択する部分も必須にしたい場合はどうしたらよいのでしょうか? グループ名をどこかへ入れるのでしょうか。 宜しくお願いします。

    • 締切済み
    • CGI
  • 【PHP】チェックボックスの必須チェック

    初歩的な質問ですみません。 現在、PHPで問い合わせフォームを作成しており、チェックボックスが選択されていない場合に、エラーを返す処理を行いたいです。 通常のテキストフィールドの場合は、下記の文言でエラー処理が行われるのですが、 チェックボックスが選択されているかを見るにはどうすればよいかご教示いただけないでしょうか。 ーーーーーーーーーーーーーーーー ■フォーム側 {if:$required.お名前} <p>エラー文</p> {/if:$required.お名前} ■php // 入力必須チェック if (isset($_POST['required'])) { foreach ($_POST['required'] as $v) { $tmpl->set("required.$v", false); if (empty($_POST[$v])) { $tmpl->set("required.$v", h($v . ERROR_REQUIRED)); $global_error[] = h($v . ERROR_REQUIRED); $global_error_flag = true; } } } ーーーーーーーーーーーーーーーー

    • ベストアンサー
    • PHP

専門家に質問してみよう