WordPress的 - 在类别页面上使用查询帖子
问题描述:
我想限制在类别页面上显示的帖子数量。我用query_posts这样做,这样WordPress的 - 在类别页面上使用查询帖子
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
if (have_posts()){
query_posts('posts_per_page=6&paged=' . $paged);
的问题是,query_posts似乎保持网站从实现它是什么类别页面上,所以它显示了所有类别的职位。有没有办法来解决这个问题?似乎应该有办法强制WordPress在query_posts之后“获取类别”,以便它实现它所在的类别,然后仅显示相关的帖子?
------编辑使用WP_query时显示的代码----
echo '<h4>Latest Resources</h4>'."\n";
global $post;
if (have_posts()){
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$the_query = new WP_Query(array(
'post_type' => 'post',
'paged' => $paged,
'posts_per_page' => 6));
while($the_query->have_posts()) {
$the_query->the_post();
if($post->post_type == 'page') continue;
setup_postdata($post);
$categories = get_the_category();
echo '<div class="listing">';
答
请不要用户query_posts
其没有很好地利用WP_Query
而不是像这样即:
EDITED
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$the_query = new WP_Query(array(
'post_type' => 'page',
'orderby' => 'date',
'category_name' => 'slug of your category here',
'order' => 'DESC',
'paged' => $paged,
'posts_per_page' => 2)
);
更多分页和WP_Query
here。
附加信息
//usage of the $the_query
while ($the_query->have_posts()) : $the_query->the_post();
//pagination
get_next_posts_link(Older', $the_query->max_num_pages);
get_previous_posts_link(Newer', $the_query->max_num_pages);
这似乎完美的,但是如果有一天,就是用你的代码,我没有得到任何物品,如果我改变post_type后,它显示了从类别再次 – 2013-03-07 20:10:30
我以外的职位已编辑我原来的帖子,以显示代码w/WP_Query,以防万一你可以看到我做错了什么。 – 2013-03-07 20:14:40
对不起,添加''category_name'=>'在这里你的类别的slu''检查我的编辑上面使用slu not而不是名称虽然 – 2013-03-07 21:04:37