WordPress セキュリティ お問い合わせフォーム

【Contact Form 7】海外からのスパムメール対策方法【プラグイン不要】

【Contact Form 7】海外からのスパムメール対策方法【プラグイン不要】
Contact Form 7で作ったお問い合せフォームからめっちゃ英語のメールが届くけどどうにかならない?

お問い合せフォームを設置したらほぼ確実に起こる問題がスパムメールです。

中には海外から英語だけのメールも届くこともあるので、今回はプラグインを使わずに英語だけのメールを弾く方法をご紹介していきます。

Akismet Anti-Spamというプラグインを使ったスパムメール対策については以下の記事を参照下さい。

WordPressAkismet Anti-Spamを使ってContact Form 7のスパムメール対策する方法

またContact Form 7の使い方はこちら記事を参照ください。

WordPressお問い合わせフォームの定番プラグイン Contact Form 7の使い方

効率よくWordPress制作したい人はこちら

Contact Form 7で海外からのスパムメール対策方法

今回はプラグインを使わずに英語のみのメールを弾く方法を解説しますが、その方法はfunctions.phpにコードを追記となります。

とは言ってもWordPressのオリジナルテーマ制作でもやっていないと分からないと思うので、画像で解説していきます。

もちろんテンプレートファイルを直接編集出来る方はそちらの方法でもOKです。

まずは管理画面の外観テーマファイルエディターを開きます。

すると初回のみこちらの注意文がポップアップされるので、理解しましたをクリックします。

テーマファイルエディターを開いたら、右側のテーマファイルにあるfunctions.phpを開きます。

そしてfuctions.phpの中にこの後ご紹介するコードを追記します。

コードを追記する位置に決まりはありませんが、分かりやすいように一番下あたりに書くといいでしょう。

上記の場合は642行目が最後になるので、643行目以降に書きます。

 

functions.phpにコードを追記

それでは本題となる追記するコードはこちらです。

// 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;
}

これを先ほどのfunctions.phpに入れるとこうなります。

あとは忘れずに下のファイルを更新をクリックしましょう。

 

送信確認する

あとは先ほど追記したコードが正常に機能しているか確認します。

ひらがなが含まれている場合と、英語のみの場合で見比べてみます。

 

ひらがなが含まれている場合

入力欄はこのようにしてみます。

これで送信ボタンをクリックするとこのようにメッセージが表示されます。

上記はひらがなが含まれているので問題なく送信できました。

 

英語のみの場合

次は英語のみで送信テストをします。入力欄はこのようにしてみます。

この状態で送信ボタンをクリックするとこのように表示されます。

送信ボタンの上に自分で追記したエラーメッセージが表示されればOKです。

その下のオレンジ枠のメッセージはContact Form 7の自動エラーメッセージです。

注意ポイント

英語のみ以外にもひらがなが含まれていなければエラーの対象となります。

以上になります。

 


WordPress案件の単価と作業効率を上げる!

Brainランキング1位獲得 & 3日で500部突破

クチコミ約300件
(平均スコア

今だけ!5つの無料特典あり🎁

👇画像をクリック

  • この記事を書いた人

じゅんぺい

タイ・バンコク在住のWeb制作フリーランス兼ブロガー▶︎37歳からWeb制作を開始▶︎コーディングとWordPressのオリジナルテーマ制作でこれまで80件以上納品▶︎Web制作中心の当ブログは月7万PV▶︎コーディングとWordPressのコンテンツを販売し、3日で500部突破&250万円&人気1位獲得。

-WordPress, セキュリティ, お問い合わせフォーム
-, , ,