見出し画像

WP/コンタクトフォームの英語スパム拒否方法

Contact Form 7 英語スパム防止

お問い合わせフォームからの英語スパムメール


1.WordPress 通常テーマ

fanction.php から追記

左サイト

外観⇒テーマエディター


右サイト

テーマファイル⇒functions.php

この画面で、一番下の行に
カスタマイズしたいコードを追記。


2.Code Snippetsでfunctions.phpを管理

プラグイン「Code Snippets」
インストール・有効化

有効化後、
サイドバーに「Snippets」が表示

「Add New」からコードを追加


3.CocoonでのPHPファイル編集


左サイト

外観⇒テーマエディター


右サイト

テーマファイル⇒テーマのための関数(functions.php)

--------------------

概要

英語の他、中国語、ロシア語、アラビア語など
日本語以外の言語はすべてシャットアウト

日本語でも「10文字以下」だとエラー


-------------------

//メールフォームの 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;
}

--------------------

この記事が参加している募集

スキしてみて

この記事が気に入ったらサポートをしてみませんか?