如何让WordPress有数字分页功能?(非外挂)

  2020-05-22  阅读 621 views 次 点赞数348

当一个WordPress的文章超过10篇之后,相信文章分页功能就要派上用场了,虽然一般预设功能的功能是有「上一页」和「下一页」的功能,不过这样似乎不能满足大家的胃口。平常网站看习惯了,总是觉得如果有很多页以上的网站,应该来个数字分页功能吧?WordPress本身有一些代表性的数字分页外挂,功能都还不错,不过你是否有想要优化一下网站,不要用外挂呢?

网路上不用外挂实现数字分页的方法目前看到有两种,一种是有人去拆解外挂的写法将它改成单一个函式,放在布景主题内的functions.php,然后呼叫一下就可以使用了,另一种做法是利用「paginate_links」这个内建函数去实现,两种方法都可以,就看大家喜欢哪一种了,透过「paginate_links」实现的方法,程式码比较短啦!

本来我是使用Pagebar2外挂实现数字分页,但后来找到了林木木提供的语法后就捨弃外挂了。这个方法虽然程式码看起来有点多,但若你看得懂他在干嘛,其实对要开发PHP程式并手动写出自己网站的分页功能可是说蛮好用的,因为他的做法用的WordPress函数比较少,利用较多的PHP函式去存取资料库并达成分页的效果。

如何让WordPress有数字分页功能?(非外挂)

后来我在Denis那边看到另一种做法,利用WordPress的函式「paginate_links」去达成数字分页的效果,程式码比较精简一些,尽量使用内部函式来存取,因此后来就改使用这样的方式去达成效果了,目前用了一阵子,感觉还不错啦!外挂能少就少,毕竟很多外挂发展到后期都多了一堆没用的功能,浪费了一些系统资源。

WordPress数字分页功能

目前我自己是使用这个方法,想说尽量使用内建的函式比较好,因为WordPress既然有开发这样的函示可以使用,就代表有其意义存在,就看大家喜欢用哪种方式啰!

第1步 请把以下语法张贴到您目前在用的布景主题中functions.php这个档案,如果档案不存在请自行建立,并将程式码贴上。

query_vars['paged'] > 1 ? $current = $wp_query->query_vars['paged'] : $current = 1;    $pagination = array(      'base' => @add_query_arg('page','%#%'),      'format' => '',      'total' => $wp_query->max_num_pages,      'current' => $current,      'prev_text' => 'Prev',      'next_text' => 'Next'    );     if( $wp_rewrite->using_permalinks() )        $pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg('s',get_pagenum_link(1) ) ) . 'page/%#%/', 'paged');     if( !empty($wp_query->query_vars['s']) )        $pagination['add_args'] = array('s'=>get_query_var('s'));    echo paginate_links($pagination);} ?>

第2步 接着在要显示数字分页的页面贴上以下语法:

通常会显示数字分页的页面如下,看你布景有哪些就加到那些档案。那档案内要加入到哪边呢?如果以最一般规格的布景主题的话,就是加入到「」之后,但是要在「」之前。

index.php (首页)caregory.php (分类页面)archive.php (彙整页面)search.php (搜寻结果页面)

如何让WordPress有数字分页功能?(非外挂)

第3步 这时回到首页看,效果应该就会出来了,如果没有效果,记得关闭本来的分页外挂或是清理一下快取喔!可是大家可能会觉得样式很丑,那该怎幺办呢?这部分就请大家自己改一下CSS,让他变得比较好看一点啰!

我不知道语法加到哪?

如果您的布景主题跟以上香肠说明的不太一样,那可能就要请您自行找看看啰!因为每个写主题的作者方式都不太一样,所以在此无法一一的做解答,这样的方式比较建议说对WordPress的架构有一定认识的人会比较好做,如果你看不太懂的话,那还是改用外挂应该会比较方便,外挂有以下几个,看您对哪个比较上手啰!

Pagebar2WP Page NumbersWP-PageNavi
上一篇: 下一篇:
相关文章