我正在开发一个WordPress项目,在这个项目中根据需求,我实现了分页的自定义分页。当我们点击第2,3页等时它很有效,但是当我在第一页上的另一页上并且想要在第一页上移动并点击1链接时它就不起作用了。我不明白这是什么问题。
我的自定义分页代码:
function custom_pagination($numpages = '', $pagerange = '', $paged='') {
if (empty($pagerange)) {
$pagerange = 2;
}
global $paged;
if (empty($paged)) {
$paged = get_query_var( 'paged' ) ? intval( get_query_var( 'paged' ) ) : 1;
}
if ($numpages == '') {
global $wp_query;
$numpages = $wp_query->max_num_pages;
if(!$numpages) {
$numpages = 1;
}
}
$pagination_args = array(
'base' => '%_%',
'format' => '?paged=%#%',
'total' => $numpages,
'current' => $paged,
'show_all' => true,
'end_size' => 1,
'mid_size' => $pagerange,
'prev_next' => True,
'prev_text' => esc_html__('Prev','textdomain'),
'next_text' => esc_html__('Next','textdomain'),
'type' => 'list',
'add_args' => false,
'add_fragment' => ''
);
$paginate_links = paginate_links($pagination_args);
if ($paginate_links) {
echo "<nav class='pagination-nav'>".$paginate_links."</nav>";
}
}
答案 0 :(得分:0)
检查你的函数custom_pagination()是否适用于front_page,也许你的主题在帖子列表页面的第一页上有特殊的模板部分。
有很多方法,开始在你的主题目录中搜索主循环所在的文件部分并查找:
if((is_home()|| is_front_page())){...}
也许你有一个部分:
if(!is_paged()){....}
包括第一页的特殊部分模板。
编辑:对不起我读错了你的问题和我的英语不好,请你更具体一点,第一页检查员显示的错误链接是什么,预期链接是什么?答案 1 :(得分:0)
终于得到了解决这个问题的方法。需要更改代码的基础:
'base' => @add_query_arg('paged','%#%'),