get_comments()函数在没有管理员角色的情况下返回空数组

时间:2015-01-07 21:29:42

标签: php wordpress

如果我在我的管理员用户上,函数get_comments()将返回模板中的注释数组,但对于订阅者,数组只是空的。我试图向用户添加权限,但它没有帮助。在任何情况下,这应该没有任何权限,例如对于未登录的用户(访客)。

这是我的代码:

function userCanComment ($event_date) {
    $comments = get_comments('post_id='. get_the_ID());
    echo count($comments); // returns 0 on user and 3 on admin
    foreach($comments as $comment) :
        if($comment->comment_content == (string)$event_date) 
            return "false";
    endforeach;
    return "true";
};

我确实打印了其他所有内容以检查它是否正常工作,并且它确实正常工作!知道为什么会这样吗?

编辑:任务获取正确的注释数组,但admin之外的所有用户都获得空数组。

1 个答案:

答案 0 :(得分:0)

您的代码似乎没有显示所有内容。是否在任何if块中调用(或不调用)函数?

<?PHP
if($userRole == "Admin") //Or some other account role
{
   $getComments = userCanComment ($event_date);
}
else
{
  //Did you forget to call the function here?
}
?>