Count 除最后一篇博文外,每两篇博文执行一次操作

Count 除最后一篇博文外,每两篇博文执行一次操作,count,slideshow,wordpress,Count,Slideshow,Wordpress,我用下面的方法为每两篇文章制作一张幻灯片 <?php $i = 0; $slideshow_query = new WP_Query("showposts=6&cat=10"); ?> <div id="slideshow-posts"> <div class="newslide"> <?php while ($slideshow_query->have_posts()) : $slideshow_query->

我用下面的方法为每两篇文章制作一张幻灯片

<?php $i = 0; $slideshow_query = new WP_Query("showposts=6&cat=10"); ?>
    <div id="slideshow-posts">
    <div class="newslide">
    <?php while ($slideshow_query->have_posts()) : $slideshow_query->the_post();      $do_not_duplicate = $post->ID; $i++;  ?>
    //my content
    <?php if ($i == 2) { ?></div>  <div class="newslide"><?php $i = 0; } ?>
    <?php endwhile; ?>
</div>

//我的内容
问题是它在结尾处创建了一张空白幻灯片——我如何让它每隔两篇帖子(或每一篇偶数帖子)创建一张新闻幻灯片(上一次偶数帖子除外)


谢谢

您可能要查找的运算符称为模或模,并返回除法的余数:

$foo = 5 % 3;           //  5 = 1*3 + a remainder of 2
$bar = 17 % 5;          // 17 = 2*5 + a remainder of 2
$baz = 42 % 6;          // 42 = 7*6 + a remainder of 0
当与2的除数一起使用时,此运算符可方便地识别循环中的偶数/奇数行:

0 % 2 => 0
1 % 2 => 1
2 % 2 => 0
3 % 2 => 1
4 % 2 => 0
…
或者在您的情况下,类似这样的情况:

<?php $i = 0; $slideshow_query = new WP_Query("showposts=6&cat=10"); ?>
<div id="slideshow-posts">
    <div class="newslide">
        <?php while ($slideshow_query->have_posts()) : $slideshow_query->the_post(); ?>   
            //my content
            <?php if ($i % 2 == 0): /* even: */ ?>
                </div><div class="newslide">
            <?php elseif ($i+1 == $slideshow_query->post_count): /* last: */ ?>
                </div>
            <?php endif; ?>
    <?php $i++; /* iterate in the end */ ?>
<?php endwhile; ?>
</div>

//我的内容
为了找出您是否已到达最后一篇文章,您可以将
$i+1
(因为我们从0开始计数)与您的查询返回的全部项目进行比较(在您的示例中最多6个)。然后关闭
,如果它们匹配

更新


根据我的评论,我扩展了上面的例子。这没有经过测试,但我相信这就是我记忆中的工作方式(即post计数)。

@polarbear-谢谢-但这对我来说并不起作用。我设置了
$I=+1
,但不知道如何摆脱最后一张幻灯片。我试过并
elseif($I==6):?>
但这对我来说不起作用。最后我只是简单地做了,所以只需为2 4和6篇文章设置if条件,尽管我认为更灵活的东西会更好。
$I==6
不起作用,因为在6篇文章中,
$I
永远不能超过5,如果你从0开始计算的话。这就是为什么您要进行比较,例如,
$i+1==6
,或者如果您想让它更具动态性,
$i+1==$post\u count
,其中
$post\u count
是查询返回的帖子数量。我相信它的工作原理类似于
$slideshow\u query->post\u count
。我将更新我的示例。