WordPress实现登录可见评论模块 未登录不可见评论功能

wordpress 评论模块登录可见,WordPress 正常可以设置登录发表评论,但不登录也可以正常看到留言评论内容

最近有用户说接到通知个人备案的网站不允许有评论互动功能,虽然我没接到过通知,但可以简单修改一下模板,让主题评论模块只有在登录的状态下可见。

这里我们要用到 WordPress 判断是否登录的函数:is_user_logged_in()

用判断函数把评论模块包裹起来就行了。

以 WordPress 默认主题 Twenty Seventeen 为例,打开主题正文模板文件 single.php,找到类似的:

if ( comments_open() || get_comments_number() ) : comments_template(); 
endif;

修改为:

if ( is_user_logged_in()){
   if ( comments_open() || get_comments_number() ) : comments_template(); 
   endif;
 }

之后,只有登录的状态下才能看见评论模块及评论内容。

其它主题方法类似,比如:

<?php if ( is_user_logged_in()){ ?> 
<?php if ( comments_open() || get_comments_number() ) : ?>
<?php comments_template( '', true ); ?>
<?php endif; ?>
<?php } ?>

这样就可以实现登录的用户可以看到评论功能啦。