2026年2月更新

お問い合わせページにメールフォームを設置したいとき、よく使われているプラグインが『Contact Form 7』です。
しかしNGワードを設定したい場合にWordPress標準の機能を使うとコメント欄などにも影響してしまいます。
NGワードをメールフォームのみに設定し、大量の営業メールでお問い合わせが埋もれてしまうのを防ぎましょう。
メールフォームの設定についてはWordPressに無料でメールフォームを設定しよう!をご覧ください。

functions.phpを開く
ダッシュボードで外観 から、
テーマファイルエディターをクリック。

テーマを編集画面で子テーマ名 を選択、
functions.phpをクリック。

子テーマがない、作れないという場合は、プラグインを使ってfunctions.phpに書き込むこともできます。
詳細はfunctions.phpを編集せずにWordPressをカスタマイズしよう!をご覧ください。

functions.php にバリデーションを追加
このコードをfunctions.phpの最下部に追加してください。
add_filter( 'wpcf7_spam', 'cf7_block_sales_words_spam' );
function cf7_block_sales_words_spam( $is_spam ) {
if ( ! isset( $_POST['your-message'] ) ) {
return $is_spam;
}
$value = $_POST['your-message'];
$ng_words = array(
'相互リンク',
'被リンク',
'掲載のお願い',
'広告掲載',
'PR案件',
'アフィリエイト',
'スポンサー',
);
foreach ( $ng_words as $word ) {
if ( mb_stripos( $value, $word ) !== false ) {
return true; //
}
}
return $is_spam;
}バリデーションを設定
貼り付けたコードをカスタマイズします。
if ( ! isset( $_POST[‘your-message‘] ) ) { と
$value = $_POST[‘your-message‘]; の2か所を
Contact Form 7で設定したメールタグに合わせて変更してください。

$ng_words = はNGワードです。現状は一般的な単語が入力してありますが、適宜変更してください。
単語は「’ ‘」で閉じ「,」で区切ってください。
最下部の『ファイルを更新』ボタンをクリックしてください。

完成
メールフォームでNGワードを入力してみて、エラーメッセージが出たら完成です。
おつかれさまでした。
エラーメッセージを変更したい場合
メールフォームのメッセージにNGワードが入力された場合、デフォルトのエラーメッセージが表示されます。
しかし、「後でまたお試しください」という一文が余計に感じられる場合もあると思いますので、変更してしまいましょう。

ダッシュボード左メニューのお問い合わせ内のコンタクトフォームから、
該当のメールフォームの編集を選択します。
画面のメッセージタブ内の4段目あたりに「送信がスパムと見なされた」テキストフレームがあるので、適宜変更します。
画面最下部の『保存』ボタンをクリックします。

CONTACT
専門知識や独自ノウハウを持つ
株式会社フリーラジカルに
まとめてお任せください
