プラグイン「contact form 7」に入力した内容をfunchions.phpで2箇所フリガナ制御したい
電話・アドレス・フリガナ制御を現在入れていますが、
フリガナの箇所が2箇所にあり、以下文を2回繰り返すと、funchions.phpのエラーで画面が真っ白になってしまいます。
複数指定する方法、または2回構文を繰り返す方法をお教え願いたいです。
エラーになるfunchions.php
<?php 〜〜〜〜〜〜〜〜〜〜関係ない部分の省略〜〜〜〜〜〜〜〜〜〜 /** * contact-form-7プラグインにて姓、名のフリガナが正しいかどうかを確認 * */ add_filter('wpcf7_validate_text', 'wpcf7_validate_kana', 11, 2); add_filter('wpcf7_validate_text*', 'wpcf7_validate_kana', 11, 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", " "))) : ""; // furiganaはフォーム側のnameです if ($name === "your-m-kana") { // カタカナの場合 if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { $result->invalidate($tag, "全角カタカナで入力してください。"); } } return $result; } /** * contact-form-7プラグインにて姓、名のフリガナが正しいかどうかを確認 * */ add_filter('wpcf7_validate_text', 'wpcf7_validate_kana', 11, 2); add_filter('wpcf7_validate_text*', 'wpcf7_validate_kana', 11, 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", " "))) : ""; // furiganaはフォーム側のnameです if ($name === "your-n-kana") { // カタカナの場合 if(!preg_match("/^[ァ-ヾ]+$/u", $value)) { $result->invalidate($tag, "全角カタカナで入力してください。"); } } return $result; } ?>
わからないこと
そもそもこのセットを2回繰り返して良いものなのか、
それとも、
($name === "your-n-kana") {
の箇所に複数クラスを指定することはできるのか
補足情報
1回しか使わない場合は指定した1箇所に対して正常に動きます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/16 08:34