如何为WP_Term_Query进行分页?

问题描述 投票:0回答:1

我有一个“图书作者”分类法。我有2000多位作者。我有一个book-author.php模板来显示2000个作者。问题是我要分页,每页10个作者。请帮助我。

$args = array(
'taxonomy'  => 'book-author',
'number'    => 10,
'orderby'   => 'name',
'order'     => 'ASC',
'hide_empty'    => false,

);

$query = new WP_Term_Query($args);
foreach ($query->get_terms() as $term) {

echo $term->name;
// I want to display 10 book author names here, and the next page will display 10 more book authors.

}

谢谢!

wordpress pagination paging term
1个回答
0
投票

因此,您想在页面上显示10个术语,然后在第2页上显示接下来的10个术语?

对于这样的自定义分页(Wordpress仅提供帖子的分页),您可以在模板中侦听具有页码的自定义$ _GET变量,然后相应地调整术语查询。

这里有一些快速的代码可以帮助您找到正确的路径(未经测试)。>>

$paged = isset($_GET['term_page']) ? intval($_GET['term_page']) : 1;
if($paged < 1) $paged = 1;

$args = array(
    'taxonomy'  => 'book-author',
    'number'    => 10,
    'offset'    => ($paged - 1) * 10
    'orderby'   => 'name',
    'order'     => 'ASC',
    'hide_empty'    => false,

);

$query = new WP_Term_Query($args);
foreach ($query->get_terms() as $term) {
    echo $term->name;
}
?>

<a href="add_query_arg('term_page', $paged--)">Prev</a> | <a href="add_query_arg('term_page', $paged++)">Next</a>
© www.soinside.com 2019 - 2024. All rights reserved.