英語の迷惑メールがcontactform7経由でやってくる!
くまさん
ドメインもコロコロ変わるのでフィルターできない!
wordpressで構築したサイトのメールフォームといえば「contactform7」。
ところがこれ経由で英文の迷惑メールがどんどこ送られてくる!メールサーバーでドメインでフィルターかけようにも、ドメインも変わるしGmail経由だったらドメイン禁止もできない!
こんな時に、「コメント欄に日本語が含まれていないとエラーが出て送信できない」処理を加える方法をご説明します。
fanction.phpに以下をコピペで足すだけ!
//メールフォームの textarea にひらがなが無ければ送信できない(contact form7)
add_filter('wpcf7_validate_textarea', 'wpcf7_validation_textarea_hiragana', 10, 2);
add_filter('wpcf7_validate_textarea*', 'wpcf7_validation_textarea_hiragana', 10, 2);
function wpcf7_validation_textarea_hiragana($result, $tag)
{
$name = $tag['name'];
$value = (isset($_POST[$name])) ? (string) $_POST[$name] : '';
if ($value !== '' && !preg_match('/[ぁ-ん]/u', $value)) {
$result['valid'] = false;
$result['reason'] = array($name => 'エラー / この内容は送信できません。');
}
return $result;
}
以上です!
こちらのブログを参考にさせていただきました。ありがとうございます!
Contact Form 7 海外からのスパム対策!お問い合わせ本文が全て外国語の場合は送信できないようにする
WordPress ブログを運営していると必ずといってよいほど発生する「お問い合わせからの英語等のスパムメール」。今回は「Contact Form7 を用いたお問い合わせフォームから送信される外国語メールだけをピンポイントでシャットアウトする方法」を紹介します。
コメント