我有这段代码:
query_posts(array(
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 6,
'cat' => $term_id,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => 'post'
));
while (have_posts()) {
the_post();
...
}
但是我仍然会得到10个帖子,而不仅仅是6. get_query_var('posts_per_page', 1)
我的价值是10而不是6.为什么?
这发生在category.php页面上,在主页上正常工作。
答案 0 :(得分:1)
您仍在使用默认查询。请改用:
// The Query
$the_query = new WP_Query( array(
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 6,
'cat' => $term_id,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => 'post'
));
// The Loop
if ( $the_query->have_posts() ) {
答案 1 :(得分:0)
试试这个
$args = array (
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 6,
'cat' => $term_id,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => 'post'
);
$query = new WP_Query($args);
if ( $query->have_posts() ) :
while ( $query->have_posts() ) : $query->the_post();
/* Your Code */
endwhile;
endif ;
答案 2 :(得分:0)
这个适合你。修改直接全局变量。
global $query_string;
query_posts("{$query_string}&posts_per_page=6");
while (have_posts()) {
the_post();
...
}