您可以使用PHP中的模运算符来检查循环计数是奇数还是偶数,然后基于此为这些元素分配一个CSS类。
$class = \'listpostsright\';
if ($wp_query->current_post % 2 == 0) {
$class = \'listpostsleft\';
}
Things to note:
<编程中的计数从0开始,因此此逻辑可能向后看,但它应该可以工作。
无需使用变量来计算Wordpress在$wp_query
对象
切勿使用query_posts
使用pre_get_posts
相反
Update:下面是一个如何在模板中使用它的示例。
<?php
// Use pre_get_posts to alter your query.
// This would be done in your functions.php
while (have_posts()) :
the_post();
$class = \'listpostsright\';
if ($wp_query->current_post % 2 == 0) {
$class = \'listpostsleft\';
}
?>
<article id="post-<?php the_ID(); ?>" <?php post_class($class); ?>>
Positioning of your elements here, you should be able to do with css alone. Unless it is much more complex than your example.
</article>
<?php endwhile; ?>
Arithmetic OperatorsPHP
pre_get_posts