Word循环自定义字段的PHP循环

时间:2018-03-19 09:07:36

标签: php wordpress loops for-loop advanced-custom-fields

我有一个网站的一部分,它使用了大量的图像自定义字段。我还有一个使用这些字段的滑块,因此对于每个图像,都有一行代码使用该自定义字段。我尝试使用循环,但有些东西不正确,因为它没有获得任何字段。

现在就是这样:

<! -- Variables -->
<?php $image1 = get_field('img-1'); ?>
<?php $image2 = get_field('img-2'); ?>
<?php $image3 = get_field('img-3'); ?>
<?php $image4 = get_field('img-4'); ?>
<?php $image5 = get_field('img-5'); ?>
<?php $image6 = get_field('img-6'); ?>
<?php $image7 = get_field('img-7'); ?>
<?php $image8 = get_field('img-8'); ?>
<?php $image9 = get_field('img-9'); ?>
<?php $image10 = get_field('img-10'); ?>

<!-- Slider -->
<div id="slider-constructora" class="flexslider">
    <ul class="slides"> <?php if( $image1 ): ?>
            <li><img class="img-responsive" src="<?php echo 

            <?php if( $image1 ): ?>
                <li><img class="img-responsive" src="<?php echo $image1['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image2 ): ?>
                <li><img class="img-responsive" src="<?php echo $image2['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image3 ): ?>
                <li><img class="img-responsive" src="<?php echo $image3['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image4 ): ?>
                <li><img class="img-responsive" src="<?php echo $image4['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image5 ): ?>
                <li><img class="img-responsive" src="<?php echo $image5['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image6 ): ?>
                <li><img class="img-responsive" src="<?php echo $image6['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image7 ): ?>
                <li><img class="img-responsive" src="<?php echo $image7['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image8 ): ?>
                <li><img class="img-responsive" src="<?php echo $image8['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image9 ): ?>
                <li><img class="img-responsive" src="<?php echo $image9['url']; ?>"></li>
            <?php endif; ?>
            <?php if( $image10 ): ?>
                <li><img class="img-responsive" src="<?php echo $image10['url']; ?>"></li>
            <?php endif; ?>

    </ul>
</div><!-- slider -->

这是我试图在滑块内部使用但没有成功,我在其他网站上使用它确实有效,但不是在这种情况下:

<?php 
for( $iteration = 1; $iteration <= 150; $iteration++){ 

    if ( get_field("image".$iteration ) ){ ?>
        <li><img class="img-responsive" src="<?php echo get_field("image".$iteration)['url'] ?>"></li>
    <?php } ?>

<?php } ?>

1 个答案:

答案 0 :(得分:0)

看起来你有语法错误。请注意代码的这一部分:

<li><img class="img-responsive" src="<?php echo 

<?php if( $image1 ): ?>

在打开新的PHP标记并启动IF语句之前,您没有完成echo或关闭PHP标记。这将导致致命的错误。

我建议启用WP_DEBUG,以便更容易捕获这些类型的错误。要执行此更改或添加define( 'WP_DEBUG', true );以使其为trueDebugging in WordPress (Codex)