你可以这样做来简化它。IF 我们在这个循环中,要么两个都是左AND 右侧列OR 如果我们的帖子少于4篇,那么至少要有一个左列,这样我们就可以将容器div移到主条件之外:
if ( $td_query->have_posts() ) {
while ( $td_query->have_posts() ) {
$td_query->the_post();
if ( $counter == 1 || $counter == 4 ) {
$output .= ( $counter == 1 ) ? \'<div class="left-col">\' : \'</div><div class="right-col">\';
$output .= \'<div class="big-image">\';
$output .= the_post_thumbnail( \'big\' ); // 1 big image
$output .= \'</div>\';
} else {
$output .= \'<div class="small-images">\';
$output .= the_post_thumbnail( \'small\' ); // 2 small images
$output .= \'</div>\';
}
$counter++;
}
$output .= \'</div>\';
}
略读一下您的原始代码,它看起来应该适合您,所以我不确定您当前在使用它时遇到了什么问题。无论哪种方式,希望上面的工作为您!