2015-01-07 5 views
0

Если я нахожусь на моем пользователе администратора, функция get_comments() возвращает массив комментариев в шаблоне, но для подписчика массив просто пуст. Я попытался добавить разрешение пользователю, но это не помогло. В любом случае это должно работать без каких-либо разрешений, например, для не зарегистрированных пользователей (гостей).Функции 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"; 
}; 

Я сделал печатать все остальное, чтобы проверить, если он работает правильно, и он сделал работу правильно! Любая идея, почему это происходит?

Редактировать: Квесты получают правильный массив комментариев, но все пользователи рядом с администратором получают пустой массив.

+0

У меня такая же проблема, также с WP_Comment_Query. Очень странно. – cenk

ответ

0

Ваш код, кажется, не показывает все. Вызывается ли функция (или не вызывается) внутри любого блока if?

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

Благодарим вас за ответ, но ответ - нет, функция, вызываемая в отдельном файле темы, и нет инструкции для этой роли. Как я уже сказал, никто из зарегистрированных пользователей не работает. –

Смежные вопросы