コメント欄停止・コメント削除

WordPressでは標準でコメント機能が付いてきます。この投稿ではコメント機能の停止や既に投稿されたコメントを削除する方法を紹介します。

設定による停止方法

新規の投稿に関してコメントを停止する

管理画面より「設定」→「ディスカッション」とすすみ、"新しい投稿へのコメントを許可する"のチェックをはずす。
これで、これから投稿するページのコメントは停止されますが、説明("これらの設定は各投稿の設定が優先されます。")にあるように、既に投稿しているページのコメントは有効です。

既存の投稿に関してコメントを停止する

管理画面より「投稿」→「投稿一覧」とすすみ、そのページの投稿画面へすすんで下さい。右上の「表示オプション」を開き、"ディスカッション"と"コメント"にチェックを入れると要素が追加されるので、"コメントの投稿を許可する。"のチェックをはずして下さい。

これでその投稿に対するコメントは停止されますが、この状態では既に投稿されたコメントは表示されたままなので、削除したい場合は、コメントの部分から"ゴミ箱"をクリックすると削除されます。

複数の(既存の)投稿をまとめてコメント停止する

管理画面より「投稿」→「投稿一覧」とすすみ、コメントを停止したい投稿にチェックを入れて左上のドロップボックスから「編集」を選び"適用"を押すと一括編集がでてくるので、"コメント"のドロップボックスから"許可しない"を選んで、更新して下さい。

まとめてコメントを削除する場合は、管理画面の「コメント」から選択して削除できます。

コメント機能を停止するプラグイン

このプラグインでは、「投稿」、「固定ページ」、「メディア」ごとにコメント機能を停止することができます。
Disable Comments

フィルターフックを使用してコメント機能を停止

以下を子テーマのfucntions.phpに追加することでコメントを停止できます。

function my_comment_status( $open, $post_id) {
    if (get_post_type() == 'attachment') {    // 「メディア」ページの場合
        return false;
    }
    return $open;
}
add_filter( 'comments_open', 'my_comment_status', 10 , 2);

上記では、'attachment'となっており、「メディアライブラリ」に投稿(アップロード)されたファイルを表示するページのコメントフォームを停止させます。他の投稿タイプに対して行う場合は、置き換えてください。よく使いそうなのが'page'で、「固定ページ」のコメントを停止させます。あとは、'post'(「投稿」)などがあります。
「投稿タイプ」についてはこちらを参照。
Post Types « WordPress Codex

全てのページでコメントを停止させる場合は以下

add_filter( 'comments_open', '__return_false');

テンプレートを編集して停止する方法

テーマ内のテンプレートから以下のコードを見つけてコメントアウトするだけで実現できます。

<?php comments_template( '', true ); ?>
// ↓コメントアウト
<?php //comments_template( '', true ); ?>

"コメントは停止中です。" "コメントは受け付けていません。"を削除

テーマによりますが、過去にコメントされそれらを表示しているけど、現在はコメントを受け付けていない場合に表示されます。(コメントを不許可にしているだけでコメント件数が0の場合は表示されません。)

テンプレートから変更

大抵のテーマでは、comments.phpに記述されています。そのなかで'Comments are closed.'の部分をコメントアウトすることで削除が可能です。

// Twenty Fifteenを例に
<?php if(0) { ?>
    <p class="no-comments"><?php _e( 'Comments are closed.', 'twentyfifteen' ); ?></p>
<?php } ?>

Remove "Comments are closed"」というプラグインでも可能のようです。(インストール・有効化するだけです。)

CSSで非表示に

.no-comments {
    display: none;
}
  • このエントリーをはてなブックマークに追加

関連記事

no image

アイキャッチにマウスオーバーすると投稿タイトルを表示

WordPressのフォーラムから定期的に流入があるため、対応をいくつか探ってみました。トピックは、「サムネイルにマウスオーバーするとタイトルが表示されるようにしたい」 ちなみに、投稿内のキャプ

Twenty Eleven カスタマイズ

目次 author-info 消す 作成者(投稿者)を消す 投稿者情報を表示しない proudly powered by wordpressのリンクをコピーライトに変更

"コメントを残す" 削除・文言を変更する方法

コメントフォームに表示される「コメントを残す」はWordPress標準で翻訳される要素です。テーマ側でカスタマイズしていない限り表示されます。 ここでは、この要素を削除したり、文言を変更する方法を紹

独自のCSSやJSを読み込む

WordPressで、プラグインではなく自作したりダウンロードしてきたCSSやJS(プラグイン)を読み込んだりするケースがあると思います。今回は、その際のCSSやJSファイルの使用方法をまとめてみまし

「続きを読む」(moreタグ)をカスタマイズ

WordPressではほとんどのテーマでは、複数の投稿を表示するアーカイブページ(カテゴリー別、タグ別、年月日別、作成者別など)ではmoreタグ(<!--more-->)を挿入することで、

ウィジェット関連のカスタマイズ・プラグイン

リンクマネージャー WordPress 3.5バージョンアップ以降にリンクマネージャーを追加するには以下のフィルタを設定もしくはプラグインをインストールして下さい。 プラグイン Link M

no image

「最近の投稿」ウィジェット カスタマイズ

目次 ウィジェットを削除 標準の設定 特定のカテゴリーに属する投稿を除外 カスタマイズ プラグイン 「最近の投稿」ウィジェットを削除 「最近の投稿」ウィジェット

Twenty Ten カスタマイズ

Twenty Tenのカスタマイズについてのまとめです。 目次 コンテンツナビゲーション 非表示 「投稿日」を非表示 「作成者(投稿者)」を非表示 "コメントをどうぞ"("leave a

開発やテストに便利なプラグイン

開発やカスタマイズに使えそうなプラグインを集めてみました。 テーマのカスタマイズには、使用中のテンプレートファイルなどを表示してくれると便利ですね。個人的には、テーマ開発の際に、実行しているSQ

Twenty Twelve "コメントをどうぞ"を消す

今回は「Twenty Twelve」で標準で投稿タイトル下に出力されるリンク"コメントをどうぞ"|"Leave a reply"を非表示にする方法を。(コメントやピンバックが1件の場合は"1件のフィー

Comment

  1. コメント欄を削除したのですが、webmastertoolで見るとurlエラーが多発しました。
    見てもよくわからなかったので、http://freeseo1.com/checklink.aspxというサイトでリンクチェックをしました。

    http://○○○.biz/comments/feed 404 Not Found

    投稿ページすべてこの調子です。
    いろいろサイトを検索して対策を探しましたがうまくいきません。

    エラーを無視してもかまわなければそれでもよいのですが・・・・
    申し訳ありませんがもしお分かりなら教えてもらえないでしょうか。

    • RSS/Atomフィードのリンクエラーのようですね。

      head内に以下のlink要素があると思います。
      http://○○○.biz/comments/feed - サイト全体のコメントのフィードURL
      http://○○○.biz/シングルページのスラッグ/feed - シングルページへのコメントのフィードURL

      "404 Not found"ということは、フィードを停止されているのではないでしょうか?
      (フックを用いてコメント欄を停止している(別)私サイトに対して、紹介いただいたオンラインツールで試してみましたが、同様のリンクエラーは検出されませんでした。)

      コメント欄を停止されるようでしたら、上記のhead内のリンクも除去して影響は無いと思います。
      headからのlink削除方法は以下を参照いただければと思います。
      http://kwski.net/wordpress/1102/
      "head内のフィードURLを消す方法"
      (** コメントのフィードURLだけ消すというのが簡単にできればいいのですが、)

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

    PAGE TOP ↑