posts_per_page不适用于新的wp查询

时间:2011-09-28 00:51:16

标签: wordpress

我需要将post_per_page设置为仅显示1个帖子,这是我使用的代码:

<?php
$yell = new WP_Query(array('posts_per_page' => 1,'post_type' => 'items', 'portfolio-category' => 'accessories'));
while ($yell->have_posts()) : $yell->the_post();
?>

<h2><?php the_title(); ?></h2>

<?php endwhile; wp_reset_query(); ?>

但它没有显示1个帖子,它显示了所有。不知道为什么

1 个答案:

答案 0 :(得分:4)

您可以使用post_limits过滤器执行此操作:

add_filter('post_limits', 'your_query_limit');
function your_query_limit($limit){
    return "LIMIT 1";
}

更新:如果您只想为自定义查询运行此功能,则可以执行以下操作:

  1. 添加它。
  2. 运行自定义查询。
  3. 将其删除。
  4. 代码就是这样:

    add_filter('post_limits', 'your_query_limit');
    $yell = new WP_Query(
        array(
            'post_type' => 'items', 
            'portfolio-category' => 'accessories'
        )
    );
    remove_filter('post_limits', 'your_query_limit');