福岡 ワードプレス システム開発 株式会社ジーティーアイ のブログ

Contact Form 7 に Throws SPAM Away でIP制限やバリデーションを行う

Contact Form 7 に Throws SPAM Away でIP制限やバリデーションを行う

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

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

目次[閉じる]

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

こちら ↓↓↓

[ogp]http://qiita.com/gtijp/items/e1e52c631f62c9ce4224[/ogp]

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

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

wpcf7_validate

です。

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

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

MW WP Form 版はこちら

[ogp]http://qiita.com/gtijp/items/65bf0af75140fe2774a1[/ogp]

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

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

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

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

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

この記事をシェアする

記事一覧へ戻る

コメント Comments

コメント一覧

コメントはありません。

関連記事 Relation Entry

IP あなたが接続中のIPアドレス:216.73.216.245