wordpress为某一个分类目录设置不同的分页数量

wordpress列表每页显示的数量是在设置->阅读中设置的,如下图:

未标题-1.jpg

但是当我们需要某一个或多个特殊分类,每页显示的文档数量不同于全局设置时,很难实现。

可以在主题functions.php文件中插入如下代码:

function custom_posts_per_page($query){
  if( is_category('case')  && $query->is_main_query() ) {
    $query->set('posts_per_page', 3);
  }
}
add_action('pre_get_posts', 'custom_posts_per_page');

代码的意思是,当判断分类为'case',切为主循环时,每页显示3篇文章