スパム対策をまったくやっていなかったり、やっているけどほったらかしにしていていつの間にかスパムコメントが大量にたまっている時があります。
スパムコメントを消すには通常、ダッシュボード画面のコメントから、承認待ちのコメントをスパム判定して、スパムを削除したり、スパム対策プラグインのAkismetでスパム判定されたスパムを削除します。
100や200ぐらいのスパムコメントならこの方法でよいのですが、数千とか数万もたまっていたら、この方法だとやたら時間がかかります。
ですので、一気に削除する場合には、データベースに直接アクセスして消す方が手っ取り早いです。
具体的なやり方はこちら。
1、ワードプレスのデータベースにアクセスする(通常phpMyAdminなど)
2、SQLのボタンを押す(直接コマンド操作が可能)
3、クエリの実行
(1)未承認のコメントをデータベースから消す
DELETE FROM `wp_comments` WHERE `comment_approved`=0
(2)承認済みのコメントをデータベースから消す
DELETE FROM `wp_comments` WHERE `comment_approved`=1
(3)特定のIPアドレスのコメントをデータベースから消す
DELETE FROM `wp_comments` WHERE `comment_author_IP`=xxx.xxx.xxx.xxx
以上となります。
複数のサイトを1つのワードプレスに入れている場合には、wp_commentsをwp_2_commentsとかwp_3_commentsなどに変えればOKです。
上記のコマンドを見るとわかりますが、WHEREの後ろの部分が条件になっているので、データベースの内容を見ながら、この部分を変えればいろんなスパムコメントの削除に対応できます。
なお、この方法で削除するとデータの復帰はできません。ですから、もし、心配なら事前にデータベースをバックアップするようにしてください。
バックアップは、phpMyAdminの管理画面からできます。
また、このやり方を実行する場合には、自己責任となりますので、ご承知おきください。
参考wordpressで大量にたまったコメントを一気に削除する方法