WordPress 使用 paginate_links 创建带分页功能的用户列表

开发WordPress主题的时候,很多朋友喜欢做一个用户列表,来增加网站用户的活跃度,创建用户列表很简单,直接用get_users功能就可以实现,可是当用户数量非常大的时候,所有用户在一个页面显示出来会造成这个页面打开的速度非常慢,这时候为用户列表增加一个分页功能就非常有必要了,很多朋友在实现分页功能的时候遇到了问题。今天我们接着创建用户列表分页的例子,来介绍一下 WordPress 的 paginate_links 函数。
首先我们需要查询并显示用户列表,顺便把分页需要的数据准备好

$number = 10; //每页显示的数量
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; //当前第几页
$offset = ($paged - 1) * $number; //偏移量
$users = get_users(); //获取所有用户
$query = get_users('&offset=".$offset."&number=".$number); //当前页面查询到的用户
$total_users = count($users); //用户总数
$total_query = count($query); //总查询数量
$total_pages = intval($total_users / $number) + 1; //总页数

foreach($query as $q) {
    //列出用户
}

有了上面的数据,我们使用 paginate_links 功能显示分页
分页的原理就不需要多说了,需要的数据无非就是一个每页显示的数据量,总数据量和当前页数,这些数据我们在上面已经准备好了,我们只需要把这些参数传给 paginate_links 就可以了,当然,如果你非要写原始的 SQL 语句来查询,直接使用 wpdb 也是可以实现的。

if ($total_users > $total_query) {
    echo "';
}

利用同样的方法,我们也可以实现 WordPress 分类标签列表分页功能,甚至在 WordPress 中自定义数据表的分页功能,也可以通过 paginate_links 函数实现。或者如果你比较熟悉用自己写的或者其他分页函数库,也是一样的原理和方法。

声明:本站资源绿色无后门无广告,可放心下载。如无特殊说明或标注,均为本站原创发布,转载请注明出处!