自定义wordpress每个分类显示多少页面数

2019年10月31日 飞飞 阅读(2.24K)

一般的分页只需要在后台设置->阅读->博客中显示的页数,即可设置网站的分页,但是这么设置的分页是全站通用的,无论是首页、分类、搜索都显示一个分页数,但是若我们想单独控制某一个页面显示多少呢?下面我们就说说这种怎么实现。

首先我们来了解一下在wrodpress中都是用哪些函数来判断分类的

判断是否是首页:is_home()
是否分页显示:is_paged()
是否是文章页:is_single()
是否是分类目录页:is_category()
是否是标签页:is_tag()

在wordpress中还会提供很多钩子,我们可以通过钩子来修改wordpress的内部运行行为,因此我们可以通过分页钩子posts_per_page设置每页显示的文章数。

//自定义不同页码的页码显示
function custom_posts_per_page($query){
     if(is_home()){
      $query->set('posts_per_page',4);//首页每页显示8篇文章
     }
    if(is_search()){
        $query->set('posts_per_page',-1);//搜索页显示所有匹配的文章,不分页
    }
    if(is_archive()){
        $query->set('posts_per_page',10);//archive每页显示25篇文章
    }
}
//this adds the function above to the 'pre_get_posts' action
add_action('pre_get_posts','custom_posts_per_page');
这样就可以分开定义每页显示的数量,注意一点的是这么设置完后,在后台设置的阅读数量就会失效。
未经允许不得转载:PHP学习网 » 自定义wordpress每个分类显示多少页面数
分享到:

相关推荐

评论抢沙发

要发表评论,您必须先

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

扫码关注微信公众号

扫描关注微信公众号