PHP while循环,成对显示两个

时间:2013-04-08 18:48:50

标签: php jquery wordpress while-loop

在Wordpress中,我创建了一个滑块来浏览用户指定的某些内容。我正在使用ACF(高级自定义字段),如果有人熟悉它,但我想要完成的是一次显示两个内容项,同时滑过jQuery滑块。

这是我的循环:

<?php while(has_sub_field('popular_topic')): ?>
    <li>
        <div class="slide">
            <img src="<?php the_sub_field('popular_topic_image'); ?>" alt="" />
            <div class="img-wrapper"></div>
            <div class="slider-content">
                <?php 

                $len = 60;
                $popularTopicTitle = get_sub_field('popular_topic_title');

                $newContent = substr($popularTopicTitle, 0, $len); 
                if(strlen($newContent) < strlen($popularTopicTitle)) {
                    $newContent = $newContent.'...';
                }
                echo '<p>'.$newContent.'</p>';

                ?>
                <a class="more-arrow" href="<?php the_sub_field('popular_topic_link'); ?>">Read More</a>

            </div>
        </div>
    </li>

<?php endwhile; ?>

目前正在使用,但它只显示一张幻灯片。我想让它显示两张幻灯片和一段时间。我可以用柜台做些什么吗?这有意义吗?

1 个答案:

答案 0 :(得分:1)

我的语法可能有些偏差,但也许可以试一试?

<?php $i = 0; ?>
<?php while(has_sub_field('popular_topic')): ?>
    <?php
        $len = 60;
        $popularTopicTitle = get_sub_field('popular_topic_title');
        $newContent = substr($popularTopicTitle, 0, $len); 
        if(strlen($newContent) < strlen($popularTopicTitle)) {
            $newContent = $newContent.'...';
        }
        $contentVar[$i] = array (
            'img'   =>  the_sub_field('popular_topic_image'),
            'title' =>  $newContent,
            'link'  =>  the_sub_field('popular_topic_link')
        );
        $i++;
    ?>  
<?php endwhile; ?>
<?php $j = 0; ?>
<?php while ($j < $i) : ?>
<li>
    <div class="slide">
        <img src="<?php echo $contentVar[$j]['img']; ?>" alt="" />
        <div class="img-wrapper"></div>
        <div class="slider-content">
            <p><?php echo $contentVar[$j]['title']; ?></p>
            <a class="more-arrow" href="<?php echo $contentVar[$j]['link']; ?>">Read More</a>
        </div>
        <?php $j++; ?>
        <?php if ($j <= $i) : ?>
            <img src="<?php echo $contentVar[$j]['img']; ?>" alt="" />
            <div class="img-wrapper"></div>
            <div class="slider-content">
                <p><?php echo $contentVar[$j]['title']; ?></p>
                <a class="more-arrow" href="<?php echo $contentVar[$j]['link']; ?>">Read More</a>
            </div>
        <?php endif; ?>
    </div>
</li>
<?php $j++; ?>
<?php endwhile; ?>