【wordpress】日本語が含まれていない迷惑メール撃退方

デザイン&マーケティング
typographyimages / Pixabay
プロフィール
この記事を書いた人
アバター画像

【GOMA (ゴーマ)】くまさん(夫)ときのこ(妻)のユニット。京都胡麻(ごま)に移住して、新しい田舎暮らしを提唱するGOMA(ゴーマ)を立ち上げました。ゲストハウス経営とサイクリングツアーをはじめとしたアウトドアアクティビティ、ウェブデザイン、デジタルマーケティング、ドローンフォトグラファーなど多業を行なっています。サイクリングやテクノロジー、DIY、田舎暮らしの情報などを中心に誰にでもわかりやすく解説しています。2018年第一子誕生。
現在はZwiftでヴァーチャルライド中心にロードバイクを楽しんでいます。ユーザーネーム「Atsushi Higashiura(gomanote.com)」。2019年夏からマラソン挑戦に続き2020年からトライアスロン挑戦。
くまさん(東裏篤史)の詳しいプロフィールはこちら

東裏 篤史をフォローする

英語の迷惑メールが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 を用いたお問い合わせフォームから送信される外国語メールだけをピンポイントでシャットアウトする方法」を紹介します。
GOMAデザイン
もっと楽しく伝わる「カタチ」をつくりませんか。

京都を中心に、ローカルでビジネスを行う中小企業や団体に着目したホームページ制作会社です。地元を元気にするページづくりを心がけます。ウェブのちょっとしたことから、ウェブ制作・リニューアルまで、お話をじっくり聞いて最善の選択ができるようご提案しています。
くまさんの20年以上のデザイナー歴で獲得したノウハウと、東京、大阪で磨いたきのこのマーケター視点から見た最新のトレンドで、web、SNS、動画、印刷物駆使し、「どうやって使って成果に結びつけるか」まで、責任を持ってお手伝いします。

デザイン&マーケティング
シェアする
東裏 篤史をフォローする
ゴーマの休日定期購読

コメント