为什么我的分页帖子总是返回相同的结果?

时间:2017-12-08 作者:verism

我目前正在本地开发,并试图为我的帖子页面设置分页。目前,我只是试图每页显示一篇文章,但这当然会增加产量。

我的问题是:

$paged = ( get_query_var( \'paged\' ) ) ? absint( get_query_var( \'paged\' ) ) : \'1\';

$posts_list = new WP_Query([
    \'posts_per_page\'    => 1,
    \'offset\'            => 0,
    \'orderby\'           => \'date\',
    \'order\'             => \'DESC\',
    \'post_type\'         => \'post\',
    \'suppress_filters\'  => true,
    \'paged\'             => $paged
]);
以及分页:

global $wp_query;

$big = 999999999; // need an unlikely integer
$translated = __( \'Page\', \'mytextdomain\' ); // Supply translatable string
    echo paginate_links( array(
    \'base\'    => str_replace( $big, \'%#%\', esc_url( get_pagenum_link( $big ) ) ),
    \'format\'  => \'?paged=%#%\',
    \'current\' => max( 1, get_query_var(\'paged\') ),
    \'total\'   => $the_query->max_num_pages
) );
分页链接输出良好,但每页上显示的帖子始终是数据库中的第一个帖子。

可能值得注意的是,我也在使用prettylinks,所以分页页面的格式应该是[域]/新闻,[域]/新闻/页面/2,[域]/新闻/页面/3等等。。。

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

找到了罪犯。我愚蠢地将偏移量硬编码为0,这一定覆盖了WordPress的查询。

我更改了:

$posts_list = new WP_Query([
    \'posts_per_page\'    => 1,
    \'offset\'            => 0,
    \'orderby\'           => \'date\',
    \'order\'             => \'DESC\',
    \'post_type\'         => \'post\',
    \'suppress_filters\'  => true,
    \'paged\'             => $paged
]);
收件人:

$posts_list = new WP_Query([
    \'posts_per_page\'    => 1,
    \'orderby\'           => \'date\',
    \'order\'             => \'DESC\',
    \'post_type\'         => \'post\',
    \'suppress_filters\'  => true,
    \'paged\'             => $paged
]);
一切都很好。

结束

相关推荐

Posts list in custom taxonomy

我有这样的事情:$terms = get_the_terms( get_the_ID(), \'kosmetyki_dystrybutor\'); $terms_ids = []; foreach ( $terms as $term ) { $terms_ids[] = $term->term_id; } $args = array( \'post_type\' => \'kosmetyki\',