WordPress网站前端的显示文章数是可以通过在后台阅读设置中指定的,后台设置会同步统一应用到首页、列表页、搜索页、标签页和分类页等等。如果我们要实现根据页面类型指定每页显示文章数,那么该如何设置呢?本文和大家一起学习下WordPress后台设置文章显示数以及自定义设置首页文章或栏目页文章显示数。
一、后台设置文章显示数
登录到你的WordPress管理后台,在侧边栏中找到并点击“设置”选项,在“设置”菜单下选择“阅读”。在“阅读设置”页面中,会看到“博客页面至多显示的篇数文章”选项,在这里,可以设置希望在博客页面上显示的文章数量,如图:
输入想要显示的文章数量,并点击页面底部的“保存更改”按钮。
二、自定义设置首页文章或栏目页文章显示数
1、将下面代码添加到当前主题函数模板functions.php中,最终效果是搜索结果页面显示5篇文章,文章归档页面显示10篇。
add_action( ‘pre_get_posts’, ‘zm_set_posts_per_page’ );
function zm_set_posts_per_page( $query ) {
if ( ( ! is_admin() ) && ( $query === $GLOBALS[‘wp_query’] ) && ( $query->is_search() ) ) {
$query->set( ‘posts_per_page’, 5 );
}
elseif ( ( ! is_admin() ) && ( $query === $GLOBALS[‘wp_the_query’] ) && ( $query->is_archive() ) ) {
$query->set( ‘posts_per_page’, 10 );
}
return $query;
}
2、若想实现不同分类显示不同的文章数,修改其中的分类ID,实现指定的分类显示不同的文章数。
add_action( ‘pre_get_posts’, ‘zm_set_posts_per_page’ );
function zm_set_posts_per_page( $query ) {
if ( ( ! is_admin() ) && ( $query === $GLOBALS[‘wp_the_query’] ) && ( is_category(array(1,2)) ) ) {
$query->set( ‘posts_per_page’, 5 );
}
elseif ( ( ! is_admin() ) && ( $query === $GLOBALS[‘wp_the_query’] ) && ( is_category(array(3,4)) ) ) {
$query->set( ‘posts_per_page’, 8 );
}
elseif ( ( ! is_admin() ) && ( $query === $GLOBALS[‘wp_the_query’] ) && ( is_category(array(5,6)) ) ) {
$query->set( ‘posts_per_page’, 10 );
}
以上就是WordPress网站自定义设置首页文章或栏目页文章显示数的方法。