WordPressのコメントを安全に投稿してもらう方法(スパム対策)

WordPressのコメント欄は、読者との交流やSEO対策にも役立ちますが、一方でスパムの温床になりやすい場所でもあります。スパムコメントが増えると、サイトの信頼性が低下し、読者の離脱を招く可能性もあります。

そこで今回は、コメント欄を安全に保ち、スパムを未然に防ぐ方法を紹介します!🚀

1. Google reCAPTCHAを導入(ボット対策)

Google reCAPTCHAをコメントフォームに追加すると、ボットによる自動投稿を防ぐことができます。

📌 設定方法
  1. 「Advanced noCaptcha & invisible Captcha」プラグインをインストール
  2. Google reCAPTCHAのサイトキーシークレットキーを取得
  3. プラグインの設定で「コメントフォームにreCAPTCHAを適用」をオンにする

メリット → スパムボットをほぼ完全にブロック
デメリット → まれに誤検知がある

2. Akismet(スパムフィルター)の導入

WordPress公式のスパム対策プラグイン「Akismet」を使うと、機械学習でスパムコメントを自動判別できます。

📌 設定方法
  1. 「Akismet Anti-Spam」プラグインをインストール
  2. APIキーを取得(無料プランあり)
  3. コメントのスパム判定を自動化

メリット → メンテナンス不要で高精度
デメリット → まれに誤判定がある(手動解除可能)

3. 日本語必須フィルターを追加(海外スパム対策)

スパムの多くは英語・中国語などの海外発なので、日本語が含まれていないコメントを弾くと効果的です。

📌 設定方法(functions.phpに追加)
function block_non_japanese_comments($commentdata) { 
   if (!preg_match('/[ぁ-んァ-ン一-龠]/u', $commentdata['comment_content'])) {
      wp_die('スパム防止のため、日本語の文字を含めてください。');
    }
   return $commentdata;
}
add_filter('preprocess_comment', 'block_non_japanese_comments');

メリット → 日本語を含まないスパムをほぼ完全にブロック
デメリット → 日本語を含まない正当なコメントも弾かれる

4. URLを含むコメントを禁止する

スパムの大半は、怪しいリンクを含むコメントなので、URL投稿を制限すると効果的です。

📌 設定方法(functions.phpに追加)
function block_comment_with_links($commentdata) {
    if (preg_match('/https?:\/\//', $commentdata['comment_content'])) {
        wp_die('スパム防止のため、URLを含むコメントは投稿できません。');
    }
    return $commentdata;
}
add_filter('preprocess_comment', 'block_comment_with_links');

メリット → リンク付きスパムを完全シャットアウト
デメリット → 正当なコメントも弾かれる可能性あり

5. コメントの承認制を有効化(手動チェック)

自動承認を無効にし、管理者が手動でコメントを確認する設定にすると、スパムを完全に防げます。

📌 設定方法
  1. WordPress管理画面 → 設定 → ディスカッション
  2. コメントの手動承認を必須にする」にチェック

メリット → 100%スパムを防げる
デメリット → 手動確認が必要で手間がかかる

6. コメントフォームに簡単な質問を追加

スパムボット対策として、「日本の首都は?」などの簡単な質問を追加すると有効です。

📌 設定方法(functions.phpに追加)
function custom_comment_form_field() {
    echo '<p>日本の首都は?(ひらがなで入力)<br><input type="text" name="custom_answer"></p>';
}
add_action('comment_form_logged_in_after', 'custom_comment_form_field');
add_action('comment_form_before_fields', 'custom_comment_form_field');

function verify_custom_comment_field($commentdata) {
    if (!isset($_POST['custom_answer']) || trim($_POST['custom_answer']) !== 'とうきょう') {
        wp_die('スパム防止のため、正しい回答を入力してください。');
    }
    return $commentdata;
}
add_filter('preprocess_comment', 'verify_custom_comment_field');

メリット → ボットには突破が難しい
デメリット → ルールを知らないユーザーが困る可能性あり

7. まとめ:おすすめの対策セット

方法 難易度 スパム防止効果 おすすめ度
reCAPTCHAの導入 ★★☆ 高い ✅✅✅
Akismet(スパムフィルター) ★☆☆ 高い ✅✅✅
日本語必須フィルター ★☆☆ 高い ✅✅
URL投稿禁止 ★☆☆ 中程度 ✅✅
コメント承認制 ★☆☆ 100%防止 ✅✅✅
質問認証を追加 ★★☆ 高い ✅✅

結論:スパムをゼロに近づける対策

💡 おすすめの対策セット

  1. reCAPTCHA(スパムボット対策)
  2. Akismet(機械学習でスパム判別)
  3. 日本語必須フィルター(海外スパム対策)
  4. コメント承認制(管理者チェック)

これらを組み合わせれば、スパムコメントはほぼゼロ にできます!🚀✨

ぜひ、あなたのWordPressサイトにも導入してみてください!😊

Webのプロがあなたの悩みを解決します!
お問合せは24時間受付のお問い合わせフォームからご連絡ください。

お問合せ・ご相談は無料です