限制自定义类别模板上的帖子数量-打破分页

时间:2011-05-16 作者:Sledge81

下面的代码是其中一位评论员提到的,但它破坏了分页。请更正

 <?php 
    include(TEMPLATEPATH. \'/includes/headline.php\'); rewind_posts();
    if (have_posts()) 
    {
    echo \'<div class="gridrow clear">\';
    while (have_posts()) : the_post();
    global $post;
    $query_string;
    query_posts( $query_string .\'&posts_per_page=5\' );
    include(TEMPLATEPATH. \'/includes/loop.php\');
    $q = $wp_query->current_post;
    $maxq = tj_current_postnum();
    if($q < $maxq-1 && is_int(($q+1)/2)) echo \'</div><div class="gridrow clear">\';
    $postcount++;
    endwhile;
    echo \'</div> <!--end .gridrow-->\';
    } else { 
    include(TEMPLATEPATH. \'/includes/not-found.php\'); 
    } 
    if ( $wp_query->max_num_pages > 1 ) tj_pagenavi();?>

2 个回复
最合适的回答,由SO网友:Hameedullah Khan 整理而成

你需要告诉Wordpress每页只能获得5篇帖子。执行此操作的参数是posts\\u per\\u page。在生成帖子之前,应该使用query\\u posts()函数,如下例所示。

<?php
   // your includes and stuff

   global $query_string;

   query_posts( $query_string . \'&posts_per_page=5\' );

   // now your have_posts
   if ( have_posts() ) {
       // list the posts
   } else {
       // not found msg here..
   }
?>

SO网友:danielwiener

此页面顶部的代码有一个嵌套循环。这就是你想要的吗?

以下代码通常位于“The\\u post()”的while循环之上

$query_string;
query_posts( $query_string .\'&posts_per_page=5\' );
这可能不是你的问题,但我认为这可能会有所帮助。

结束