如果只需要第三篇文章,请使用偏移量跳过前两篇文章,然后设置posts_per_page
到1
仅获取特定职位
你可以在你的论点中这样尝试
$args = array(
\'post_type\' => \'testimonial\',
\'offset\' => 2,
\'posts_per_page\' => 1
);
$testimonials = new WP_Query( $args );
while( $testimonials->have_posts() ) {
$testimonials->the_post();
?>
<li>
<?php the_content(); ?>
</li>
<?php }
wp_reset_postdata(); ?>
在我开始之前,请注意一下您的代码和我编辑的代码。(
我已经编辑了我的原始代码以显示正常循环)。您不需要使用echo get_the_content()
. 你可以使用the_content()
直接地
请记住在循环后用重置postdatawp_reset_postdata()
.
根据评论中的要求,这里是不使用循环的替代语法。还有,先写一两个注释:
使用此替代语法,您不能使用模板标记,因为它们将不可用WP_Post
对象,并使用过滤器,如中所述link
您不需要重置postdata,因为您没有更改全局变量,您可以尝试
$args = array(
\'post_type\' => \'testimonial\',
\'offset\' => 2,
\'posts_per_page\' => 1
);
$testimonials = new WP_Query( $args );
//Displays the title
echo apply_filters( \'the_title\', $testimonials->posts[0]->post_title );
//Displays the content
echo apply_filters( \'the_content\', $testimonials->posts[0]->post_content );