我正在创建一个名为archive-key_piece.php的自定义模板,以容纳自定义帖子类型,' Key Pieces'。我想将posts_per_page从10个帖子更改为12个帖子。我使用query_posts('post_type=key_piece&posts_per_page=12&paged='.$paged);
问题在于,当我使用query_posts()
时,它会完全禁用分页(偶数/ key-piece / page / 2 / won不起作用,它只会转换与第1页相同的结果) 。
当我使用
时$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts('post_type=key_piece&posts_per_page=12&paged='.$paged);
这允许我通过url(key-piece / page / 2 /等)手动访问下一页但它仍然禁用next_posts_link()
我也在functions.php
中尝试了这个function number_of_posts_on_archive($query){
if ($query->is_archive) {
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$query->set('posts_per_page', 12);
$query->set('pagination', $paged);
}
return $query;
}
add_filter('pre_get_posts', 'number_of_posts_on_archive');
但结果相同。
非常感谢任何帮助。谢谢!
答案 0 :(得分:2)
你走了。
<?php
$variable = $WPQuery;
$WPQuery = null;
$WPQuery = new WPQuery();
$WPQuery->query('showposts=6&post_type=news'.'&paged='.$paged);
while ($WPQuery->have_posts()) : $WPQuery->the_post();
?>
<!-- Template Stuff Here-->
<?php endwhile; ?>
<div class="navigation">
<?php previous_posts_link('« Newer Here') ?>
<?php next_posts_link('Older Here »') ?>
</div>
<?php
$WPQuery = null;
$WPQuery = $variable; // Reset
?>
希望它会对你有所帮助。