档案中的帖子数量

时间:2011-04-18 作者:ilovewordpress

如何在存档的第一页上显示10篇文章,在其他页面上显示20篇(>1)?

我的自定义帖子类型名称是“公寓”。

干杯

1 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

您可以更改posts_per_page 变量取决于您所在的页面,因此在第一页设置为10,在其他页面设置为20。但是,您必须modify the offset query variable too, 否则,您将跳过第二页上的帖子11-20,因为该页认为它们已经显示在第一页上。

add_action( \'pre_get_posts\', \'wpse15087_pre_get_posts\' );
function wpse15087_pre_get_posts( &$wp_query )
{
    if ( $wp_query->is_post_type_archive( \'apartments\' ) ) {
        if ( ! $wp_query->is_paged() ) {
            $wp_query->set( \'posts_per_page\', 10 );
        } else {
            $wp_query->set( \'posts_per_page\', 20 );
            $wp_query->set( \'offset\', ( ( $wp_query->get( \'paged\' ) - 2 ) * 20 ) + 10 );
        }
    }
}

结束