質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

プラグイン

プラグイン(plug-in)は、ソフトウェアアプリケーションの機能拡張の為に開発された、一組のソフトウェアコンポーネントのことを指します。

メール

メールは、コンピュータネットワークを利用し、 情報等を交換する手段のことです。

Q&A

解決済

1回答

1545閲覧

(Wordpress) contact foam7のフリガナチェックの設定で、必須入力と非必須入力の設定が上手くできません。

rosecolored

総合スコア14

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

プラグイン

プラグイン(plug-in)は、ソフトウェアアプリケーションの機能拡張の為に開発された、一組のソフトウェアコンポーネントのことを指します。

メール

メールは、コンピュータネットワークを利用し、 情報等を交換する手段のことです。

0グッド

0クリップ

投稿2020/01/14 07:08

こんにちは、質問をさせてください。
WordPress (バージョン: 5.3.2)
よろしくお願いします。

wordpressのプラグイン contact form7の設定で、お名前(フリガナ)の入力の際のチェックの設定について教えてください。

予約制のサービスサイトを運営していおります。
予約フォームに入力する際に予約人数を入力し、予約者全員のお名前を入力していただくのですが、
最低予約人数は1名なので、1人目の名前(漢字)と名前(フリガナ)の入力は必須設定にしており、2人目以降の名前入力欄は、1名予約の場合もあるので必須設定ではありません。

色々調べて、お名前(フリガナ)欄にカタカナ以外で入力した場合に、送信ができないように設定したのですが、
1名で申し込んだ時は2人目以降の名前フリガナ欄の入力は必要はないので空欄のまま送信すると、2人目のフリガナ欄に「全角カタカナで入力してください」と表示されます。
フォーム設定画面のhtmlのフォームタグの「*」は外しています。

2人目をフリガナ欄を空欄にした場合でも送信できる設定をご教示お願いします。
また、下記のコードで間違っていれば訂正内容をご教示お願いします。

何卒よろしくお願いいたします。

/*フリガナチェック*/ function wpcf7_validate_kana($result,$tag){ $tag = new WPCF7_Shortcode($tag); $name = $tag->name; $value = isset($_POST[$name]) ? trim(wp_unslash(strtr((string) $_POST[$name], "\n", " "))) : ""; if ($name === "last-name-furigana") { if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { $result->invalidate($tag, "全角カタカナで入力してください。"); } } if ($name === "first-name-furigana") { if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { $result->invalidate($tag, "全角カタカナで入力してください。"); } } if ($name === "attendant-last-name-furigana") { if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { $result->invalidate($tag, "全角カタカナで入力してください。"); } } if ($name === "attendant-first-name-furigana") { if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { $result->invalidate($tag, "全角カタカナで入力してください。"); } } return $result; } add_filter('wpcf7_validate_text', 'wpcf7_validate_kana', 11, 2); add_filter('wpcf7_validate_text*', 'wpcf7_validate_kana', 11, 2);

1人目のお名前(フリガナ)
<label> セイ(必須) [text* last-name-furigana placeholder "例)ヤマダ"]</label><label> メイ (必須) [text* first-name-furigana placeholder "例)タロウ"]</label>

2人目のお名前(フリガナ)
<label> セイ
[text attendant-last-name-furigana placeholder "例)タナカ"]</label><label> メイ [text attendant-first-name-furigana placeholder "例)イチロウ"]</label>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

チェックしなければ済む話しでは?

PHP

1function wpcf7_validate_kana($result,$tag){ 2 $tag = new WPCF7_Shortcode($tag); 3 $name = $tag->name; 4 5 $value = isset($_POST[$name]) ? trim(wp_unslash(strtr((string) $_POST[$name], "\n", " "))) : ""; 6 7 if ($name === "last-name-furigana") { 8 9 if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { 10 11 $result->invalidate($tag, "全角カタカナで入力してください。"); 12 } 13 } 14 if ($name === "first-name-furigana") { 15 16 if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { 17 18 $result->invalidate($tag, "全角カタカナで入力してください。"); 19 } 20 } 21/* ここから 22 if ($name === "attendant-last-name-furigana") { 23 24 if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { 25 26 $result->invalidate($tag, "全角カタカナで入力してください。"); 27 } 28 } 29 if ($name === "attendant-first-name-furigana") { 30 31 if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { 32 33 $result->invalidate($tag, "全角カタカナで入力してください。"); 34 } 35 } 36ここまで不要 */ 37 38 return $result; 39} 40add_filter('wpcf7_validate_text', 'wpcf7_validate_kana', 11, 2); 41//add_filter('wpcf7_validate_text*', 'wpcf7_validate_kana', 11, 2); ←要らない

投稿2020/01/19 06:25

編集2020/01/19 08:23
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rosecolored

2020/01/24 12:05

回答ありがとうございました。 とりあえずそのようにさせていただこうと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問