WordPressあれこれ

Contact Form 7 海外からのスパム対策❗️

Contact Form 7 海外からのスパム対策
WEB先案内
ココナラでよくご相談されることの一つとしてスパムメールがあります。いわゆる迷惑メールというやつです。

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

ちょくちょく海外から送られてきませんか❓

簡単にブロックする方法は色々あります。

たとえば、問い合わせフォームを送信する時に画像認証を導入する方法。

これはユーザビリティが低下したりとちょっとよろしくないとも考えてしまいます。

もっと簡単にブロックする方法を探したところ、日本語メールだけを受信してブロックする方法がありました❗️😊

今回は「お問い合わせフォームから送信される英語メールだけをピンポイントでシャットアウトする方法」を紹介します。

Contact Form 7 お問い合わせフォーム「海外スパム対策」

さっそくですが、以下のコードをコピーしてテーマの fanction.php に貼り付けてください。
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;
}
//メールフォームの 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);
PHP
たったこれだけで、お問い合わせ本文(textarea)が全文日本語以外だった場合はエラーになり送信できないようになります。

お問い合わせ本文は <textarea></textarea> というタグが使われています。その textarea タグの内容に「ひらがな」が無い場合は、エラーを吐き出して、送信できないようにしてくれる…という PHP コードです。

ひらがなの有無で送信の不可を判別しています。

したがって、海外スパムは全文外国語ですから、どう頑張ってもエラーになり送信することができないというわけなんです。

設定後は忘れずに動作チェック❗️

function.php に海外スパム対策を施したあとは、お問い合わせフォームから送信してみて、正常に動作するかをチェックしてください。作りっぱなしはダメですよ❗️

CF7動作テスト

当サイトのお問い合わせでもこの機能を導入しているので、実際の動作を確かめてみたい方は「こちらのお問い合わせ」から本文エリアに英文をいれて試してみてください。

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

上図では「ひらがな」が入力されたテキストエリアでは正常、「abcd」が入力されたテキストエリアではエラーが発生していることが分かります。

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

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

この迷惑営業の対策もあわせて設定しておくと鉄壁です❗️

WordPress に標準搭載されている機能をうまくつかうことで「Contact Form7 に特定のキーワードが含まれていたら、送信ボタン押した時、警告文を出して送れなくする」ことができます。

まとめ

今回は「Contact Form 7 を用いたお問い合わせフォームから送信される英語メールだけをピンポイントでシャットアウトする方法」を紹介しました。

WordPress のお問い合わせから送られてくる全文英語のスパムメールにお悩みの方はぜひお試しください。

本記事の方法なら画像認証などでユーザビリティを下げなくても、英語スパムメールは完全シャットアウトできますから効果てきめんですよっ❗️

もしプログラミングは訳ワカメ🫠 という方はWEB先案内にご相談ください😊

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

  1. ご担当者様
    突然のご連絡失礼いたします。 Owned株式会社の古川と申します。
    貴社サイトを拝見したところ、発信されている情報が弊社が運用するサイト(https://owned.co.jp/)と親和性が高いと判断し、ご連絡を差し上げました。

    つきましては、2つの方法での連携をご提案させていただきます。

    ①相互リンクをさせていただく
    相互リンクでの連携をする方法です。

    ②発リンクをしていただく謝礼に、ホワイトペーパーを進呈させていただく
    発リンクをいただいた場合に、謝礼としてホワイトペーパーを進呈させていただきます。

    いずれかの方法をお選びいただけますと幸いです。

    ■ 相互リンクとSEO
    相互リンクとは、Webサイト同士がお互いのサイトにリンクを貼り合うことを指します。
    これは、ユーザーにとって有益な情報へのアクセス手段を増やすだけでなく、SEO(検索エンジン最適化)の観点からもメリットがあります。
    検索エンジンは、Webサイトの「被リンク」(他のサイトから自分のサイトへ貼られたリンク)を評価基準の一つとしています。
    関連性の高いサイトからの被リンクは、サイトの信頼性や権威性を高めると判断され、検索順位の向上に繋がることが期待できます。

    貴社サイトとの相互リンクを通じて、相互のサイトへの訪問者を増やすだけでなく、SEO効果による検索順位向上も見込めます。

    ■ 料金・提携等に関して
    今回の相互リンクのご提案は、「双方に費用が発生しない無料の範囲で行う」ことを前提としております。
    ぜひご検討くださいますようお願い申し上げます。

    ■弊社サイトから貴社サイトへのリンク掲載方法について
    いずれか1つのコラム(https://owned.co.jp/column/)内に、参考サイトとしてリンクを掲載させていただきます。
    掲載ご希望のコラムの選定や文言の微調整などは柔軟に承りますので、お気軽にお申し付けくださいませ。

    ■ 貴社サイトから弊社サイトへのリンク掲載方法について
    前項と同じく、参考サイトとしての掲載をお願いさせていただいております。
    相性の良いコラムなどがございましたらご紹介いただけますと幸いです。

    ■ホワイトペーパーの進呈について
    発リンクをしていただけるコラムをご返信ください。
    内容を確認の後、発リンクのご依頼をさせていただきます。
    貴社からの発リンクが完了次第ホワイトペーパーを進呈させていただきます。

    ご興味をお持ちいただけましたら、ぜひご返信くださいませ。
    なお、お電話での対応はいたしかねます。オンラインミーティングについては受け付けておりますので、不明点などありましたらメールにてお尋ねください。

    ご検討のほど、よろしくお願いいたします。
    _______________________________
    Owned株式会社
    東京都品川区大崎4丁目6-8
    ファミネスハイツ海老澤1階
    古川 宗城
    メール: ft-2@owned.co.jp
    電話:03-6303-9786
    HP:https://owned.co.jp/
    _______________________________

ABOUT ME
WEBさん
WEBさん
WordPressの不具合をなおす人
あなたのお仕事をする時間を使ってITに関することを調べたり、トライしてみたりして、それでもうまくいかない。そんなことはありませんか? WEB先案内をご利用いただくと、困ったときにITの顧問としてあなたのITに関するお悩みにお答えし、サポートを行うことができます。
記事URLをコピーしました