贝壳之家

WordPress在文章列表中显示评论

评分 8.7, 满分 10 分 (26 票)
Loading...
如果需要我帮忙改代码,或者有WordPress二次开发 / PHP网站建设等需求,可以联系我购买付费服务。QQ 825533758

需求说明:
我想在首页每篇日志下像文章页single那样显示评论,<?php comments_template(); ?>直接放首页没有反应的。有谁知道怎么办教教我 谢谢!

解决方案:
在WordPress主题的index.php文件的文章调用循环内,即 while (have_posts()) : the_post(); 和 endwhile; 之间适当位置,添加以下代码:

1
2
3
4
5
6
7
<?php
    global $withcomments;
    $withcomments = true;

    // 包含评论模板文件,
    comments_template("/inline-comments.php");
?>

实现原理很简单,我在以上代码的第2行声明我将使用全局变量$withcomments,并将其值改成true。接着第6行包含用于在首页显示评论的模板inline-comments.php,为什么不使用默认的评论模板comments.php呢?其实不管什么东西都有其适用范围,一般WordPress主题中的comments.php都是专门为文章single和页面page定制的,如果把它硬套到主页上,似乎会觉得很别扭,如果你想在首页显示各文章的评论,就给首页定制个显示评论的模板吧!如想使用默认评论模板comments.php,第6行改成comments_template();

以上方法可以推广到分类页、标签页、日期归档页等文章列表页!

 

如果想了解更多,请进一步阅读WordPress文档:
The Comments Template
WordPress tip: Include comments in post lists

露兜
ourwindow@163.com

业余编程爱好者。

标签: WordPress
我要提问

69 条评论

点此留言
12 62
  1. 落定

    本地没有…上传空间后出现…望指点…这个篇文章的效果在网上找了很久问了很多人终于在这找到了…感谢分享…

  2. 落定

    文章下面显示都是一样的评论。。。

  3. 露兜

    @落定 要想解决问题,又不给网址。
    不同主题的代码也不一样,也不知道你的代码是怎么写的。。。。。

  4. 落定

    @露兜 http://maxling.net/?cat=1 纠结显示评论纠结了N天,评论显示了又纠结评论重复显示。。。。

  5. 露兜

    @落定 发这个代码看看

  6. 落定

    @露兜 问题解决,像露兜说的在默认主题twentytwelve中正常,但在XIU主题中评论重复显示,纠结了N久决定使用twentytwelve的comment.php,在修改中发现<?php wp_list_comments('type=comment&callback=say_comment_list') ?>多了 type=comment& 这个,去掉它就OK,请问这个是????

  7. 露兜

    @落定 type的值可以是'all', 'comment', 'trackback', 'ping back', or 'pings'.

  8. 落定

    谢谢露兜的耐心的回答小菜。。赞一个。。。

  9. 快印

    很实用的功能,一定用得上。

12

发表评论

评分 8.7, 满分 10 分 (26 票)
Loading...