如果用户已留下评论,则隐藏审阅表单

时间:2019-11-13 作者:Shamsher Ali

如果用户在某个帖子上留下评论,我试图隐藏评论表单,否则显示评论表单。

我在一个钩子中添加了一个代码片段,该钩子隐藏了表单,但恢复为WordPress注释表单。我想不出如何隐藏那个表单!如果需要的话,我也愿意隐藏整个专栏。

感谢@斜视his post

function hide_review_form( $review_form ) {
    global $current_user, $post;

$usercomment = get_comments(array(\'user_id\' => $current_user->ID,\'post_id\' => $post->ID) ); 

if (! $usercomment) {
  return $review_form;
    }
}
add_filter( \'woocommerce_product_review_comment_form_args\', \'hide_review_form\' );

2 个回复
SO网友:RiddleMeThis

你不能像这样做一个简单的If语句。。。

if ( count( $usercomment ) < 1 ) {
    comment_form();
};
我不知道你为什么要取消它。

SO网友:Chetan Vaghela

请尝试下面的代码,它是在帖子上发表评论的当前用户的返回评论计数。get_comment()count 仅返回注释计数的参数。在代码中,您使用的是未定义的$commentdata变量。我已经测试了以下代码,它对我来说运行良好。如果这对你有用,请告诉我。

global $current_user, $post;

if ( ! is_user_logged_in() ) {
    comment_form();
} else {

      $is_commented_count = get_comments(array(\'user_id\' => $current_user->ID, \'post_id\'=>$post->ID,\'count\' => true) );
      if($is_commented_count < 1) {
          comment_form();
      }
}

相关推荐

Comments.php保留评论日期/时间,但删除日期/时间的#超级链接

我在谷歌上搜索了这个问题,似乎找不到解决方案。。。在评论中,我试图从评论日期/时间中删除超链接,当您将鼠标悬停在评论日期上方时,它会将超链接(示例/#comment-210)链接到以下评论。。。我可以在函数中输入什么。php删除链接,我想保留日期/时间文本。。