我有一个模板与下一个查询:
<?php
if ( get_query_var('paged') ) {
$paged = get_query_var('paged');
} else if ( get_query_var('page') ) {
$paged = get_query_var('page');
} else {
$paged = 1;
}
query_posts( array( 'post_type' => 'post', 'paged' => $paged ) );
?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<?php get_template_part('/post-types/home-normal'); ?>
<?php endwhile; ?>
当然,如果我想在这种情况下排除前4个帖子使用 'offset' => 1
购买,如果我转到帖子列表的第2页,这不起作用,实际上,从第1页显示相同的帖子,并且相同在第3页,每次都是相同的帖子
我的PHP知识是有限的,它可以是这个查询的东西?或者可能是模板中的更多内容?谢谢
2 回答
Use it like this
offset
会覆盖分页,因为当您进入查询级别时,它会通过offset
进行分页 .你仍然可以使用
offset
,你只需要做一些数学运算来将你想要的offset
乘以当前的页码(注意这个计算是有效的,因为每页的帖子和offset
都是4,你可能必须使用你的posts_per_page
值计算两者是否不同):编辑 - 过滤
found_posts
所以页数是正确的 .欲了解更多信息,请参阅link