Even/Odd every two posts

时间:2018-10-05 作者:Sullivan

我需要每两篇文章显示一个不同的布局,是否可以使用偶数/奇数来实现这一点?

<?php while (have_posts()): the_post() ?>
   <?php if ($wp_query->current_post % 2 == 0): ?>
      even
   <?php else: ?>
      odd
   <?php endif ?>
<?php endwhile ?>

1 个回复
SO网友:rudtek

您的代码虽然看起来可能是其他代码,但它是基于数学的,因此随着迭代次数的增加,它将是均匀的。模2==0表示这个意义上的偶数(迭代/2没有余数必须是偶数)

如果您希望将每2篇帖子放在一起,您可以这样做:

<?php 

while (have_posts()): the_post()
    $count = $wp_query->found_posts; //counts all items in query
    echo \'<div>\'; //starts first row
    echo \'<div>\'.$content.\'</div>\';
    if ($wp_query->current_post % 2 == 0) echo \'</div><div>\'; //ends row every other iteration
    if ($wp_query->current_post % 2 == $count )echo \'</div>\'; // ends final row
endwhile 
?>
post_count 是该特定页面的帖子数,而found_posts 是满足查询要求且不分页的所有可用帖子的计数。

结束