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

wordpress教程 2019年10月31日 4.3K

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

首先我们来了解一下在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学习网

第一时间了解最新网络动态
关注博主不迷路~

PHP学习网:站内收集的部分资源来源于网络,若侵犯了您的合法权益,请联系我们删除!
分享到:
赞(0)

文章评论

您需要之后才可以评论
0点赞 0评论 收藏 QQ分享 微博分享

PHP学习网

PHP学习网