快生活 - 生活常识大全

站点给文章增加私密留言评论功能的教程


  WordPress 站点的评论默认情况下都是公开的评论,也就是说只要是审核通过的评论,所有人(包括站长、留言者、游客等)都可以看到这条评论内容。如果我们想要实现只有留言者和站长看到的私密留言评论,那么应该怎么实现呢?
  Nana主题增加私密留言评论的功能步骤
  1、打开 Nana主题的 functions.php 文件,在最后一个 ?> 的前面添加以下代码:
  //私密评论
  functionliao_private_message_hook($comment_content,$comment){
  $comment_ID=$comment->comment_ID;
  $parent_ID=$comment->comment_parent;
  $parent_email=get_comment_author_email($parent_ID);
  $is_private=get_comment_meta($comment_ID,’_private’,true);
  $email=$comment->comment_author_email;
  $current_commenter=wp_get_current_commenter();
  if($is_private)$comment_content=‘#私密#‘.$comment_content;
  if($current_commenter[‘comment_author_email’]==$email||$parent_email==$current_commenter[‘comment_author_email’]||current_user_can(‘delete_user’))return$comment_content;
  if($is_private)return‘<span style=""color:#A6A6A6""><em class=""fa" fa-lock=""></em>该评论为私密评论</span>’;
  return$comment_content;
  }
  add_filter(‘get_comment_text’,’liao_private_message_hook’,10,2);
  functionliao_mark_private_message($comment_id){
  if($_POST[‘is-private‘]){
  add_comment_meta($comment_id,’_private’,’true’);
  }
  }
  add_action(‘comment_post’,‘liao_mark_private_message’);
  2、打开 Nana主题的 comments.php 文件,找到以下代码:
  <p class=""form-submit"">
  <input id=""submit"" name=""submit"" type=""submit"" tabindex=""5"" value=""提交评论""/>
  <!--?php post-=""-->ID);?&gt;<!--?php-->
  修改为:
  <p class=""form-submit"">
  <input id=""submit"" name=""submit"" type=""submit"" tabindex=""5"" value=""提交评论""/>
  <span style=""margin-right:"><input type=""checkbox"" name=""is-private""/>私密评论</span>
  <!--?php post-=""-->ID);?&gt;<!--?php-->
  3、打开 Nana主题的Nanaincunctionswidgets.php 文件,找到以下代码:
  <!--?php echo="" my_comment-=""-->comment_content);?&gt;<!--?php-->
  修改为
  <!--?php echo="" my_comment-=""-->comment_content,$my_comment);?&gt;<!--?php-->
  即可。
  至此,主题已经具备了私密留言评论的功能。只需要我们在评论时,勾选私密评论即可。具体如下图所示:
  记得勾选私密评论按钮
  提交评论后,评论者本人是可以在当前页面和侧边栏近期评论中看到具体的评论内容,但是如果清空浏览器缓存的话,连评论者自己也是无法看到评论内容的。具体如下图所示:
  只有评论者本人和站长可见
  如果不是评论者或站长的话,其他游客用户是无法看到具体的评论内容的,只能看到"该评论为私密评论"的字样。具体如下图所示:
网站目录投稿:夏岚