如何在WordPress中显示所有帖子?

时间:2016-08-19 21:04:56

标签: wordpress

我想在我的WordPress主页中显示所有帖子。

我已经写了以下查询获取所有帖子,但我没有收到所有帖子。它只显示10或11个帖子:

 $args = array(
                'post_type' => 'post',
                'posts_per_page' => $number,
                'order' => $sort_by,
                'orderby' => 'title',
                'post_status' => 'publish',
                'tag' => $tags,
                'ignore_sticky_posts' => 1,
                );
 $args['tax_query'] =  array(
                    array(
                    'taxonomy' => 'post_format',
                    'field' => 'slug',
                    'terms' => 'post-format-video',
                    ));
 $query = new WP_Query($args);

所以,请让我知道如何获得所有帖子。

3 个答案:

答案 0 :(得分:1)

尝试多个循环:

<?php if ( have_posts() ) : ?>
    <?php while ( have_posts() ) : the_post(); ?>    
    <!-- do stuff ... -->
    <?php endwhile; ?>
<?php endif; ?>

如果您需要Advanceded查询,请使用此选项:

<?php query_posts( 'post_type=post&posts_per_page=10'); ?>

你可以使用query_posts()获取所有帖子

答案 1 :(得分:0)

  

显示已发布的所有帖子。您必须使用 post_per_page =' - 1'来检索所有帖子。

$args = array(
'post_type'=> 'post',
'orderby'    => 'ID',
'post_status' => 'publish',
'order'    => 'DESC',
'posts_per_page' => -1 // this will retrive all the post that is published 
);
$result = new WP_Query( $args );
if ( $result-> have_posts() ) : ?>
<?php while ( $result->have_posts() ) : $result->the_post(); ?>
<?php the_title(); ?>   
<?php endwhile; ?>
<?php endif; wp_reset_postdata(); ?>

希望这样可以按照您的期望重审所有帖子。

答案 2 :(得分:0)

设置变量posts_per_page => -1

如此:

 $args = array(
                'post_type' => 'post',
                'posts_per_page' => -1,
                'order' => $sort_by,
                'orderby' => 'title',
                'post_status' => 'publish',
                'tag' => $tags,
                'ignore_sticky_posts' => 1,
              );

这将使 Query 获取您表中的所有帖子。

WP Query docs

中查看更多信息