WordPress自制留言板倒序分页问题

Yourtion 创作于:2010-07-04     全文约 1384 字, 预计阅读时间为 4 分钟

之前看教程自己制作了留言板《无插件创建WordPress留言板》~但是倒序显示的问题一直不行~今天重新研究了一回~终于解决了~还搞定了分页问题~

给大家分享一下~希望对你有帮助~

网上流传的方法是找到guestcomments.php里面的

<?php foreach ($comments as $comment) : ?>

替换成:

<?php foreach (array_reverse($comments) as $comment) : ?>

实现留言板留言倒序显示。

但是我替换后并没有改变~研究发现那一段是针对WP2.6以前的版本~WordPress2.7开始支持的wp_list_comments函数,我用的是3.0啊~~晕死~

wp_list_comments函数入手开始查找,于是找到模板标签wp_list_comments() 里面详细讲解了这个wp_list_comments函数包含的各类定义:

<?php 
$args = array(
	'walker' => null,
	'max_depth' => ,
	'style' => 'ul',
	'callback' => null,
	'end-callback' => null,
	'type' => 'all',
	'page' => ,
	'per_page' => ,
	'avatar_size' => 32,
	'reverse_top_level' => null,
	'reverse_children' => 
); 
?>

发现,里面是有个参数reverse_top_level来选择是否倒序的,如果你指定了这个参数的值,那么就是你所指定的值优先。那么,我们就可以传参让它倒序了,而因为我们是自己制作的一个模版,所以,又不会影响到其他的文章页评论!

所以把

guestcomments.php里的<?php wp_list_comments(); ?>

替换成

<?php
	wp_list_comments('reverse_top_level=1&type=comment&callback=mytheme_comment'); 
?>

就解决了倒序问题·····然后是分页~事实上也是有函数的~

只需要将原来的

<?php 
	wp_list_comments('type=comment&callback=mytheme_comment'); 
?>

之后加上&per_page=显示数目,

<?php 
	wp_list_comments('type=comment&callback=mytheme_comment&per_page=10'); 
?>

就可以控制页面显示评论分页数目了 。

最后 <?php wp_list_comments(); ?>就变成

<?php 
	wp_list_comments('reverse_top_level=1&type=comment&callback=mytheme_comment&per_page=10'); 
?>

这就是我留言板的效果了·

原文链接:https://blog.yourtion.com/wordpress-message-board-reverse.html