WPのコメントスパム対策

WordPress(ワードプレス)から「モデレートしてください」のメールが山のように来ました。
スパムコメントが短時間に100以上送られてきています。
結局、僅かの時間で400以上になりました。
WordPress(ワードプレス)でコメントスパム対策はどのようにすれば良いのでしょうか?

  1. コメントモデレーションとは?
  2. コメントを許可しない
  3. コメントフォームを非表示
  4. Akismetとは?

1.コメントモデレーションとは?

コメントモデレーションはWordPressの機能の1つで、サイトオーナーが承認するまではコメントを表示しないようにする為のものです。

コメントモデレーション等のコメント設定はWPの管理画面の「設定」→「ディスカッション設定」→「コメントモデレーション」(①)で行います。

ディスカッション設定

そして、「自分宛のメール通知」の「コメントがモデレーションのために保留されたとき 」にチェックが入っていると、その都度、メールが届きます。

通知メールが不要な場合は、チェックを外します。

ただ、「コメントがモデレーションのために保留されたとき 」にチェックが入っていなくても、「コメントが投稿されたとき」にチェックが入っている(②)と同じく届きました。

これでは、スパムでないコメントが投稿された場合も通知がこなくて不便です。
(現時点では検証が足りないので不確かな情報です。)

2.コメントを許可しない

「新しい投稿へのコメントを許可する」かどうかは、「設定」→「ディスカッション設定」で設定(③)できるのですが、設定をした後に投稿した記事にしか反映しません。

記事(新規及びアーカイブ)ごとに設定したい場合は「投稿の編集」ページの右上の「表示オプション」の「▼」をクリック。
「表示項目」の「ディスカッション」にチェックを入れます。

表示オプション

すると、投稿記事の下に「ディスカッション」が表示されます。
「コメントの投稿を許可する」のチェックを外すと、コメントの投稿ができません。

投稿ディスカッション

しかし、この場合、投稿記事ページにはコメント欄が表示され、「コメント停止」の文言が入ります。

3.コメントフォームを非表示

これはコメントフォームを非表示にする方法です。
コメントは全く受け付けないと言う場合はこの方法がベストです。

管理メニュー「外観」→「テーマの編集」をクリック。
右のテンプレート欄の「単一記事の投稿」(single.php)をクリック
「単一記事」のソースが表示されます。

画面上で「CTRL+F」を押します。
検索窓が開きます。
検索窓に下記を入れます。

マークされているところが該当箇所です。
これを削除します。

これでコメントフォームは表示されません。

但し、ソースを編集する場合はオリジナルソースをコピーして保存されてからをお勧めします。

4.Akismetとは?

上の「コメントモデレーションとは?」では、「コメントモデレーション」の設定方法について述べたのですが、これだと、コメント管理ページでスパムコメントをいちいち処理しなきればなりません。
これはスパムコメントが大量にある場合は特に手間です。

そこで、スパムコメントを判別して自動で処理してくれるプラグインがWPに初期設定されている「Akismet」です。
但し、「Akismet」を有効にするにはAPI キーの登録が必要になります。
これについは、別の記事でアップします。

「Akismet」を有効化しておくとコメントやトラックバックのスパムを排除してくれます。大変便利です。


ワードプレスの関連記事

このページの先頭へ