2013-03-07 64 views
0

我想限制在类别页面上显示的帖子数量。我用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">'; 

回答

0

请不要用户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_Queryhere

附加信息

//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); 
+0

这似乎完美的,但是如果有一天,就是用你的代码,我没有得到任何物品,如果我改变post_type后,它显示了从类别再次 – 2013-03-07 20:10:30

+0

我以外的职位已编辑我原来的帖子,以显示代码w/WP_Query,以防万一你可以看到我做错了什么。 – 2013-03-07 20:14:40

+0

对不起,添加''category_name'=>'在这里你的类别的slu''检查我的编辑上面使用slu not而不是名称虽然 – 2013-03-07 21:04:37

相关问题