评论计数器仅针对作者的帖子

时间:2018-05-06 作者:Honoluluman

我正在与许多作者建立一个博客网站。因此,我一直在努力在后端管理区域保护每位作者的隐私。

我一直在使用一个很好的插件(https://wordpress.org/plugins/view-own-posts-media-only/) 只有作者自己的帖子才会在后端和编辑评论中出现。php与作者帖子相关的评论,这很好。

插件的唯一问题或故障是the comments counter 在管理区。该插件实际上没有过滤作者帖子标准的评论数。

我一直在试图找到一些代码片段,仅用于此目的。我找到了这个帖子https://bnks.xyz/showing-an-author-only-their-comments-in-wordpress/ 并且只尝试了评论计数器部分,但没有给我正确的结果。

是否有此问题的代码片段?如何给作者正确的计数器结果,只与自己的帖子有关?

我曾试图在可能的情况下通过css向管理员隐藏计数器,但我做不到,因为我发现同样的css也会隐藏其他计数器。(我不想禁用整个注释计数器,也不想对作者隐藏edit-comments.php)enter image description here

如有任何建议,将不胜感激。

1 个回复
SO网友:Honoluluman

目前,为了对作者角色隐藏注释计数器,我编写了这样一个小代码

 /*
 * Hide Comments Counter for Author Hook
 */
 if ( ! current_user_can( \'manage_options\' ) ) { add_filter( 
\'comment_status_links\', function( $status_links ) 
{

// Override the original links:
$status_links[\'trash\'] = sprintf(
  "<a href=%s>%s <span class=\'count\'></span></a>",
  esc_url( admin_url( \'edit-comments.php?comment_status=trash\') ),
  __( \'Trash\' )
);
$status_links[\'spam\'] = sprintf(
  "<a href=%s>%s <span class=\'count\'></span></a>",
  esc_url( admin_url( \'edit-comments.php?comment_status=spam\') ),
  __( \'Spam\' )
);
$status_links[\'approved\'] = sprintf(
  "<a href=%s>%s <span class=\'count\'></span></a>",
  esc_url( admin_url( \'edit-comments.php?comment_status=approved\') ),
  __( \'Approved\' )
);
$status_links[\'moderated\'] = sprintf(
  "<a href=%s>%s <span class=\'count\'></span></a>",
  esc_url( admin_url( \'edit-comments.php?comment_status=moderated\') ),
  __( \'Pending\' )
);
$status_links[\'all\'] = sprintf(
  "<a href=%s>%s <span class=\'count\'></span></a>",
  esc_url( admin_url( \'edit-comments.php?comment_status=all\') ),
  __( \'All\' )
);
return $status_links; 
} ); }


if ( ! current_user_can( \'manage_options\' ) ) { add_action(\'admin_menu\', 
\'hide_notification_bubble_in_admin_menu\'); }

function hide_notification_bubble_in_admin_menu() {
global $menu;
// Override the original links:
$menu[25][0]    = sprintf( __( \'Comments %s\' ), \'\' );
}   

结束