Wordpress - 为什么has_comments()不起作用?

时间:2017-05-06 02:25:13

标签: php wordpress

我在过去几个小时内一直在解决这个问题,无法在网上找到原因,也无法找到任何帮助。

所以,我从头开始制作自定义主题。 WordPress始终以默认的" Hello world开始!"发布以及与该帖子相关联的默认评论。

" Hello world!"帖子不应该评估为假,但出于某种原因,它确实如此。  正如您所看到的,我尝试使用WordPress提供的comments_templates函数来允许从名为" comments.php"的文件中运行代码。但这只是为我的问题添加了一个错误因素并且这样做了," comments.php"从来没有被访问,所以现在,我把它留下来。

执行以下代码时显示的内容

证明应该显示评论

<?php
  if(have_posts()) : while(have_posts()) : the_post();
    get_template_part('content', get_post_format());
    // comments_template('/comments.php', true);
    if(have_comments()) :
      echo 'OMG COMMENTS WORK';
      foreach (get_comments() as $comment) :
        echo $comment -> comment_content;
        echo $comment -> comment_author;
        echo apply_filters('comment_text', $comment -> comment_content);
      endforeach;
    else :
      echo 'There are no comments to display here (this statement may or may not be true...)';
    endif;
  endwhile; endif;
?>

1 个答案:

答案 0 :(得分:3)

阅读Codex: 警告:在调用comments_template之前,此函数将始终返回“false”。如果您在调用comments_template之前需要检查注释,请改用get_comments_number。