「コメント一覧」に「あなたの記事に他ユーザーが書いたコメント」のみを表示する方法
WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが参加することになる。
そのままの状態では、投稿者でも、全員のコメントが見えるし、編集、削除もできてしまう。
管理画面のコメントには、自分の投稿記事に対してつけられたコメントのみを表示する。
コメントの編集権に関しては、人が書いたコメントは編集できないようにしておく。
functions.php へ記述
//投稿者のみ、「自分の投稿」へのコメントのみ表示
if (!current_user_can('administrator')) { function myblogs_user_comments_only($query){ global $pagenow; if('edit-comments.php' != $pagenow || $query->is_admin) { //コメントページで return $query; } else { global $user_ID; $query->query_vars['post_author'] = $user_ID; //記事投稿者とログインユーザーIDが一致のものだけ } return $query; } add_filter('pre_get_comments','myblogs_user_comments_only'); }
“管理者”でも非表示にしたい場合は、一番上と一番下の
if (!current_user_can('administrator')) { }
を削除すればいい。
なお、
投稿者が人のコメントを編集、削除できないようにする方法はこちらを参照。