WordPress分页代码实现WordPress文章列表分页

WordPress集成了自动分页功能,使用WordPress分页代码调用WordPress分页方法,就可以快速为WordPress文章列表分页,这个方法在WordPress仿站制作WordPress主题时非常有用。

WordPress自带的分页函数非常难看,不能看到页码,只能看到上一页下一页首页,用户体验极差。像大前端DUX主题这种带页码的分页方法就非常不错,不仅显示总共有多少页,而且还自动省略多余的页码,用户体验极佳,效果如本站的文章列表分页。

WordPress分页代码实现WordPress文章列表分页

这种WordPress文章列表分页方法不仅可以随时回到首页,还会自动省略中间的页码,只显示用户所在位置附近的页码,还有上一页下一页以及总共多少页,可以说是把用户需要的条件都考虑进去了。

WordPress分页代码

function mo_paging() {
    $p = 3;
    if ( is_singular() ) return;
    global $wp_query, $paged;
    $max_page = $wp_query->max_num_pages;
    if ( $max_page == 1 ) return; 
    echo '<div class="pagination"><ul>';
    if ( empty( $paged ) ) $paged = 1;
    echo '<li class="prev-page">'; previous_posts_link('上一页'); echo '</li>';
    if ( $paged > $p + 1 ) _paging_link( 1, '<li>第一页</li>' );
    if ( $paged > $p + 2 ) echo "<li><span>···</span></li>";
    for( $i = $paged - $p; $i <= $paged + $p; $i++ ) { 
        if ( $i > 0 && $i <= $max_page ) $i == $paged ? print "<li class=\"active\"><span>{$i}</span></li>" : _paging_link( $i );
    }
    if ( $paged < $max_page - $p - 1 ) echo "<li><span> ... </span></li>";
    echo '<li class="next-page">'; next_posts_link('下一页'); echo '</li>';
    echo '<li><span>共 '.$max_page.' 页</span></li>';
    echo '</ul></div>';
}

function _paging_link( $i, $title = '' ) {
    if ( $title == '' ) $title = "第 {$i} 页";
    echo "<li><a href='", esc_html( get_pagenum_link( $i ) ), "'>{$i}</a></li>";
}

将上面的代码放入主题目录下的functions.php文件中,在文章列表循环结束后调用mo_paging()方法即可显示WordPress分页效果。需要注意的是这段代码只是输出了HTML标签,并没有css,大家需要自己写上自己喜欢的css样式代码。

给TA打赏
共{{data.count}}人
人已打赏
建站教程

WordPress基础教程-如何设置网站导航菜单

2019-9-5 13:30:54

建站教程

Gridea 使用教程

2019-9-5 13:59:08

本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策。若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
⚠️
本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策
若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索