WordPressで大量のスパムコメントを一括削除する方法

comment_in_wordpress
Pocket

「スパムコメントを無視していたら、数百、数千件になってしまった」ということはないでしょうか。

WordPressはスパムコメントと思われるコメントを自動で承認待ちにします。そのあと、承認待ちからコメントを削除するには、手動でおこなう必要があります。

しかし、WordPressの管理画面からコメントの操作をおこなおうとすると、デフォルトではコメントを20件しか削除ができません。数千件あった場合は、気が遠くなる作業です。

そこで、今回はコメントをまとめて削除する方法を紹介します。「コメントの表示件数を変更する方法」、「データベースからまとめて削除する方法」を記載していますので、削除したいコメント数に応じて、どちらかの方法をおこなってみましょう。

スポンサーリンク

表示オプションからコメントの表示件数を変更

コメントを削除する際、デフォルトでは1ページに20件までしかコメントが表示されないため、一括操作での削除は20件までとなります。しかし、表示オプションからコメントの表示件数を変えることにより、最大999件のコメントを一括で削除できるようになります。

WordPressの管理画面にログインしたのち、以下の手順でコメントの表示件数を変更します。

  1. 「コメント」をクリックする
  2. コメント画面から「表示オプション」をクリックする
  3. 「ページごとに表示する項目数」を「999」に変える
  4. 「適用」をクリックする

comment_in_wordpress

これで、1ページに999件のコメントが表示できるようになりました。最後に、以下の手順で承認待ちのコメントを削除することができます。

  1. 「左側のチェックボックス」にチェックを入れる
  2. 一括操作を「スパムとしてマーク」や「ゴミ箱に移動」に変更する
  3. 「適用」をクリックする

delete_comment

SQLコマンドで承認待ちのコメントを一括削除

先ほどのコメントの表示件数を変更する方法では、1回で最大999件のコメントを処理することができました。しかし、数千、数万のコメントを削除したい場合、何十回も操作しなければいけません。そのため、コメントの数が非常に多い場合は、SQLコマンドで承認待ちのコメントを一括削除する方法をおすすめします。

今回の手順では、SQLコマンドをphpMyAdmin上で発行します。そのため、phpMyAdminが使えることを確認したのち、作業をおこなっていきましょう。

phpMyAdminをインストール

phpMyAdminとは、PHPで実装されたMySQLの管理ツールです。ブラウザからデータベースのデータの確認や変更ができるようになります。インストールしていない場合は、以下の記事を参照して、インストールしましょう。

wp_commentsテーブルのSQL発行画面に移動

wp_commentsテーブルとは、WordPressのコメントデータが格納されているテーブルです。phpMyAdminにログインしましたら、以下の手順でwp_commentsテーブルのSQL発行画面に移動します。

  1. WordPressで使っているデータベースをクリックする
  2. wp_commentsテーブルをクリックする
  3. SQLをクリックする

wp_comments

「DELETE」コマンドで未承認のコメントを一括削除

それでは、準備ができましたので、あとはSQLコマンドを発行するのみです。テーブルのデータを削除するには、DELETE文を使います。SQLコマンドを枠内に張り付けたあと、以下の手順で未承認のコメントを一括削除することができます。

DELETE FROM `wp_comments` WHERE `comment_approved` = '0'
  1. 上記のSQLコマンドを枠内に張り付る
  2. クエリを検証をクリックし、エラーが発生しないことを確認する
  3. 実行をクリックする

excute_sql_in_wp_comments

SQLコマンドの意味ですが、「comment_approved」カラムはコメントの状態を意味します。そのため、「0」の値を指定して、承認待ちのコメントをすべて消しているということです。

  • 「0」…承認待ち
  • 「1」…承認済み
  • 「spam」…スパムコメント
  • 「trush」…ゴミ箱

なお、WordPressでマルチサイト構築している場合は、サイトID毎に「wp_comments」のテーブルが作られます。例えば、サイトIDが「2」の場合は、「wp_2_comments」というテーブル名になりますので、マルチサイト時はテーブル名が異なる点を注意しましょう。

Akimistでスパムコメント対策

スパムで大量のコメントを一括で削除する方法を紹介しましたが、そもそもスパムメールと思われるメールは自動的にスパムに割り振るようにしてしまえば、コメントを削除する必要がなくなります。

そこで、WordPressのプラグインで「Akimist」というプラグインがあります。スパムと思われるコメントを自動的に判定しますので、スパムコメントが大量に溜まることがなくなります。

スパム対策として有名なプラグインですので、スパムコメントでお困りの際は、ぜひ使ってみましょう。Akimistの使い方については、以下のサイトをご参考ください。

スポンサーリンク

feedly、RSSをフォローする