如何实现WordPress不同分类则每页显示不同数量的文章

代码2020-12-24849 人已阅来源:ytkah

有时我们需要让wordpress不同的分类显示不同数量的文章并分页,比如资讯的分类页显示20篇并分页,教程的分类页显示10篇并分页,要如何实现呢?随ytkah一起来看看吧!把下面的代码加入当前主题的function.php文件中

function filter_pre_get_posts( $query ){
  if ( $query->is_main_query() ){
    $num = '';   
    if ( is_category(array(9)) ){ $num = 14; }
    //if ( is_category(array(10)) ){ $num = 14; }
    //if ( is_category(array('questions')) ){ $num = 14; }
    // if ( in_category(array('jhg','hjj','yjj','xxj','jlg')) ){ $num = 10; }
    //if ( is_home() ){ $num = 10; }
    // else if ( is_category() ){ $num = 10; }
    // else if ( is_tag() ){ $num = 10; }
    // else if ( is_date() ){ $num = 10; }
    // else if ( is_author() ){ $num = 10; }
    // else if ( is_search() ){ $num = 10; }
    // else if ( is_archive() ){ $num = 10; }
    if ( '' != $num ){ $query->set( 'posts_per_page', $num ); }
  }
  return $query;
}
add_action('pre_get_posts', 'filter_pre_get_posts');

修改代码里的分类ID号或者分类目录别名,来控制不同分类不同文章数量分页效果。

修改代码里的$num = 14 后面的14就是每页显示的文章数量,可以修改成自己需要的数值。保存上传。