Retrieve or Query Pages by ID

时间:2012-05-08 作者:markyeoj

我的代码有问题,我想在主页上显示3个特定页面,但我的代码不起作用。。这是代码。。

<?php $args = array(
                      \'post_type\' => \'page\',
                      \'post__in\' => array(3,5,7)
                      );
                    query_posts($args);
                    while (have_posts()) : the_post();
                    $do_not_duplicate = $post->ID; ?>
                <div class ="date_author group">
                    <h3 class="date"><?php the_time(\'M j, y\');?></h3>
                    </div>
                    <h3 class="title"><a STYLE="text-decoration:none" href = "<?php the_permalink();?>"><?php           the_title();?></a></h3>

                    <?php the_excerpt();?>

                    <?php endwhile; ?>

1 个回复
最合适的回答,由SO网友:mrwweb 整理而成

这是对query_posts() 仅用于修改页面的主查询。此外,即使您将代码段更改为使用get_posts(), 您的模板标签(例如。the_excerpt()) 不会像get_posts() 不是一种在帖子中循环的方法,它只是返回一个帖子数组。

你想要的是WP_Query. 将第一行代码更改为:

$args = array(
    \'post_type\' => \'page\',
    \'post__in\' => array(3,5,7)
);
$my_three_posts = new WP_Query( $args );
while ($my_three_posts -> have_posts()) : $my_three_posts -> the_post();
...

结束