Contact Form 7 で独自バリデーションを行う方法はいろいろありますが
今回 Throws SPAM Away を使って NGワードやリンク数、日本語が含まれているかどうかでのバリデーション、そして国内IPアドレスからでないとエラーとするようなサンプルコードを書きました。

スマホでメールtoうざい彼氏

Throws SPAM Away を使った Contact Form 7 へのバリデーション追加

こちら ↓↓↓

こちらのサンプルは Throws SPAM Away 2.8.1 以降で動作します。
ぜひご覧ください!

ちなみにこのバリデーションを追加するために利用したフック は 

wpcf7_validate

です。

WordPressはフックでいろいろ機能追加ができるので楽チンですね。
その分いろいろ脆弱性も出来やすいので細心の注意が必要です。
余談ですが、WordPressのプラグイン審査の時はかなり脆弱性対策を言われます。当たり前ですね。

メールフォームへのバリデーションは他に MW WP Form もやってますので参考にどうぞ。
もちろん、今回の国内IPアドレス制限は MW WP Form でもできるはずです。

MW WP Form 版はこちら

このサンプルではNGワード、不正IPアドレスの制御をおこなっていますので参考になさってください。

Throws SPAM Away 2.8.1 アップデートしました・・・

実は、このサンプルを作っていて不具合を発見してしまったため、急きょ Throws SPAM Away のアップデートを行いました。
度重なる更新で大変申しわけありませんが、この機能(ホワイトリストでの制限)を使って国内IPアドレス制限をやりたい方は必ずアップデートをお願い致します。

このサンプルを作ったきっかけ

このブログの「コードで人助け」という記事に書いたお問い合わせがこのサンプルを作るきっかけになりました。
このコードで助かる方がいれば私は幸せです。

この記事が気に入ったら
いいね ! しよう

Twitter で