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

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;
}
  • このエントリーをはてなブックマークに追加

関連記事

「カレンダー」ウィジェット カスタマイズ・プラグイン

目次 カレンダー移動をajax遷移させるようにする 営業日・休業日を色分けして表示 ページやウィジェットにgoogleカレンダーを追加 カレンダーウィジェットをajax遷移させるよ

コメントフォーム・リストのカスタマイズ

コメント投稿部分は、基本的にはどのテーマでも同じフォームを出力してテーマのstyle.cssで外観を変えています。コメントフォーム欄をカスタマイズするには、プラグインもしくはフックを用いてカスタマイズ

Twitterのツイートボタンの設置

Twitterのツイートボタンの設置はプラグインを使用しなくても容易に実装できるようです。 ソーシャルボタン設置のプラグインはこちらにいちおうまとめています。 Tweetボタンの設置コード 公式

ナビゲーションメニューに検索フォームを追加

メニュー内に検索フォームを追加したいという問い合わせをいただいたので試してみました。 メニューのつくられかた まずは、WordPressでメニューがつくられる手順を説明します。 箱をつく

Twenty Thirteen カスタマイズ

WordPress 3.6のデフォルトテーマである「Twenty thirteen」のカスタマイズをまとめて投稿します。 Twenty thirteenのカスタマイズネタがあまりないです。(それだけ

no image

ソーシャルボタン設置 プラグイン

各種メジャーなソーシャルメディアボタンを設置できるプラグイン WP Social Bookmarking Light 国産プラグイン。国産ゆえ、はてなボタンの設置も可能 ダウンロード Twe

jQueryをCDNから読み込む

WordPressではデフォルトでjQueryライブラリが同梱されています。この記事では、それをやめて、CDNから読み込み、使用する方法を解説します。 WordPress 3.6 3.9 4.0

no image

アップグレードで「更新を展開しています... 」のままになった場合の対処のひとつ

久々に出会ったような気がするのでメモです。 ローカルのテスト環境でWordPressを3.7から3.8にアップグレードしようとしたところ、「更新を展開しています... 」で止まってしまい更新処理がす

翻訳ファイルの子テーマ化

子テーマでfunctions.phpなどを変更していくと翻訳すべき項目にぶつかっていくと思います。例を挙げると_()の部分で、Wordpressが翻訳を行ってくれる部分です。 個人的には、日本語

Twenty Eleven カスタマイズ

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

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だけ消すというのが簡単にできればいいのですが、)

@carubo へ返信する コメントをキャンセル

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

*

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

    PAGE TOP ↑