WordPress的评论系统一直不是很完善,主题中的comments.php和comments的css代码也比较繁多。其实如果能够用Twitter等工具完全代替就好了(已经有了以Disqus为代表的第三方社会化评论系统)。回到主题,Wordpress评论自定义按时间顺序升序排列或者倒序排列也不是那么直接简单。
1.主题采用wp_list_comments函数,直接在Wordpress后台设置顺序
WordPress后台本身就有评论嵌套,分页和排序的设置,但是这个设置生效的前提是主题使用的函数是:
<?php wp_list_comments();?>
这个是在Wordpress2.7以后才支持的,所以之前制作的主题往往是不支持在后台设置的。
不少主题就是采用的“旧”函数:
<?php foreach ($comments as $comment) : ?>……<?php endforeach; ?>
所以直接在Wordpress后台设置是无效的。
2.主题采用foreach函数,可以直接加倒序代码
针对采用foreach函数的“旧”主题,直接在主题的comments.php中的
<?php if ($comments) : ?>
后面添加:
<?php $comments = array_reverse($comments) ?>
3.更改Wordpress默认评论排序设置
在Wordpress3.05版中,定位comment-template.php原始文件887、891行的
ORDER BY comment_date_gmt
在后面添加 DESC
,注意有一个空格。
这种方法就是麻烦,每次Wordpress升级都得手动更改。