【Contact Form 7 】特定のメールアドレスからの送信を拒否する【迷惑・スパム対策】
【Contact Form 7 】特定のメールアドレスからの送信を拒否する
WordPressのメールフォーム作成するプラグイン「Contact Form 7 」。
Contact Form 7を使用していている際に特定のメールアドレスからのメールを拒否する方法をご紹介します。
- 同じメールアドレスから何度もスパムメールや迷惑メールが送られてくるため拒否したい
- フリーメールからのメールを拒否したい
場合に有効ですのでお試しください。
【Contact Form 7 】特定のメールアドレスからの送信を拒否する方法
下記コードをfunnction.phpに追加します
function intactis_wpcf7_validate( $result, $tags ) {
foreach ( $tags as $tag ) {
$name = $tag['name'];
if ( $name == '①メールフィールド' ){
$ng_list = '/xxxxx@xxx.xx|@xxx.xx/'; //②送信拒否アドレス
$email = $_POST[ $name ];
if ( preg_match($ng_list, $email) ){
$result->invalidate( $name, '③エラーメッセージ' );
}
}
}
return $result;
}
add_filter( 'wpcf7_validate', 'intactis_wpcf7_validate', 11, 2);
書き換え
①メールフィールド
Contact Form 7で設定した、メールフィールドの名前を記入します。
↓の場合は
if ( $name == 'your-email' ){
②送信拒否アドレス
拒否したいアドレスを入力
▼1件の場合
$ng_list = '/xxxxx@co.jp/'; //②送信拒否アドレス
▼複数の場合
$ng_list = '/xxxxx@co.jp/|xxx@net'; //②送信拒否アドレス
複数の場合は「|」で区切ります。
部分一致のため、ドメインのみなどの記載も可能です。
③エラーメッセージ
任意のエラーメッセージを入力してください
関連記事