WordPressで過去の投稿のコメントを一括で停止する方法
ブログを運用していてスパムコメントが多い場合、コメントをFacebookコメントに移行すると効果があります。Facebookコメントに移行したあとに、過去のコメントを一括で停止する方法を紹介します。
ブログでコメントスパムを防ぐために、身元がちゃんとしているFacebookのコメントシステムに移行することは有効です。Facebookを使ってスパムのコメントを投稿する人はほとんどありません。Facebookのコメントにして、ブログ自体のコメントを無効に設定することでコメントスパムからさよならすることができます。
Facebookのコメントは、Facebookの公式WordPress用プラグインを導入すれば簡単に実現できます。あとは、WordPressのコメントを停止していくだけです。
まずは新規のコメントを停止する設定を行います。ついでにピンバックとトラックバックも無効にしておきます。
「設定」->「ディスカッション」にアクセスし、「ディスカッションの設定」で「他のブログからの通知(ピンバック・トラックバック)を受け付ける」と「新しい投稿へのコメントを許可する」のチェックを外して更新します。
次に過去の投稿の設定を変更します。
WordPressでは、ディスカッションの設定で「新しい投稿へのコメントを許可する」になっている状態で投稿すると、その投稿のコメントの設定が許可になります。そして、ディスカッションの設定の説明にもあるように、コメントが許可になった各投稿の設定がこのディスカッションの設定よりも優先されます。なので、過去の投稿のコメントの設定をひとつひとつすべて停止しておく必要があります。
まだはじめたばかりのブログであれば、ひとつひとつの投稿の編集画面でコメントを無効にすることはそれほど大変なことではありません。でも、長く続けているブログであれば投稿の数も膨大になり、投稿をひとつひとつ編集するのは大変な労力です。
そこでSQLを活用して投稿のコメントをすべて一括で停止します。
phpMyAdminなどのデータベース管理ツールでWordPressのデータベースにアクセスして次のクエリーを実行します。
update wp1_posts
set comment_status = 'closed', ping_status = 'closed'
* wp1は設定によって異なります。
なお、コメントだけやピンバック・トラックバックだけを無効にする方法はこんな感じです。
update wp1_posts
set comment_status = 'closed'
update wp1_posts
set ping_status = 'closed'
これでWordPress全体のコメントが無効になりました。
これでコメントスパムに悩まされずにブログを運用することができますね。