【发布时间】:2012-10-18 12:30:37
【问题描述】:
我已经从 WordPress 管理面板设置了每页显示 10 个帖子,但我想在第一页显示 11 个帖子,在我的例子中是它的主页。所以我想在主页上显示 11 个帖子,而对于所有其他页面,我想显示 10 个帖子。
我正在尝试使用此代码来实现它,但无论页码如何,is_home() 总是返回 true。
function home_custom_query( $query ) {
if ( is_home() )
{
$query->query_vars['posts_per_page'] = 11;
}
return $query;
}
add_filter( 'pre_get_posts', 'home_custom_query' );
但是上面的代码改变了所有页面的帖子数量,包括主页。
我也试过这个来检测页码并尝试如下
function home_custom_query( $query ) {
if ( is_home() && $query->query_vars['paged'] == 0)
{
$query->query_vars['posts_per_page'] = 11;
}
return $query;
}
add_filter( 'pre_get_posts', 'home_custom_query' );
它将主页的每页帖子更改为 11 个,但在所有其他页面上不显示任何内容。
我还尝试了cbnet-different-posts-per-page 插件,它可以达到目的,但它添加了一些我不想使用的额外功能。我需要一个简单的解决方案来解决我的问题。而且我相信会有一种简洁明了的方法来解决这个问题。
【问题讨论】:
标签: wordpress wordpress-theming