嘿,我有这个wordpress设置,我不是一个真正的PHP开发人员。我想要实现的是循环排除最后创建的3个帖子。有没有办法去做呢?
<div class="grid">
<?php
// Start the loop.
while ( have_posts() ) : the_post(); ?>
<div class="col-sm-6 col-lg-4">
<?php get_template_part( 'content', 'square' ); ?>
</div>
<?php
// End the loop.
endwhile; ?>
</div><!-- .grid -->
<?php the_posts_pagination( array( 'mid_size' => 2, 'prev_text' => '<span class="glyphicon glyphicon-menu-left" aria-hidden="true"></span>', 'next_text' => '<span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span>' ) );
// If no content, include the "No posts found" template.
else :
get_template_part( 'content', 'none' );
endif;
?>
答案 0 :(得分:0)
定义一个计算总帖子数的变量($ count = [总帖子数]),然后使用for循环设置$ count-3的最大迭代次数迭代帖子:
for($i=0; $i<($count-3); $i++){
do something;
}
答案 1 :(得分:0)
像这样的“标准”循环的帖子计数存储在全局$wp_query
中。要访问它,您可以使用$GLOBALS['wp_query']->post_count
。
<?php
// Get the post count and set a counter variable
$count = $GLOBALS['wp_query']->post_count; $i = 0;
while ( have_posts() && $i < $count - 3 ) : the_post(); ?>
<!-- Post content loop -->
<?php $i++; endwhile; ?>
请注意,只有当您有超过3个帖子时才会有效...