WP ACF获取附件'页面链接'滑块中图像数量的URL

时间:2016-08-04 09:21:16

标签: php html wordpress advanced-custom-fields

我正在使用高级自定义字段为我的网站生成滑块。每个图像(附件)也有一个自定义字段,使用' Page Link'选项,允许我将链接与每个图像相关联。下面的代码是通过链接,但每个图像都是相同的,无论滑块中显示哪一个(每个图像应该有不同的链接)

    <section class="slideshow">
        <?php 
        $images = get_field('slideshow');
        if( $images ):
        ?>
            <?php foreach( $images as $image ): ?>
                <figure>
                    <img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />
                    <figcaption>
                        <h2><?php echo $image['caption']; ?></h2>
                        <h4><a href="<?php the_field('url_link'); ?>">View Case Study</a></h4>
                    </figcaption>
                </figure>
            <?php endforeach; ?>
        <?php endif; ?>
    </section>

我也尝试过如下图所示的特定于图片的url_link字段,但这并没有提取任何信息。

<h4><a href="<?php echo $image['url_link']; ?>">View Case Study</a></h4>

非常感谢提前。

1 个答案:

答案 0 :(得分:0)

事实证明,这并不是“画廊”的最佳用途。自定义字段。相反,我转而使用“中继器”#39;可以有子字段的字段,我可以在其中保存图像,标题和链接信息。代码修改如下。

<section class="slideshow">       
    <?php if( have_rows('slideshow_slides') ): ?>
        <?php while( have_rows('slideshow_slides') ): the_row(); 
            // vars
            $image = get_sub_field('image');
            $caption = get_sub_field('caption');
            $link = get_sub_field('link');
        ?>

        <figure>
            <img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt'] ?>" />
            <figcaption>
                <h2><?php echo $caption; ?></h2>
                <?php if( $link ): ?>                    
                    <h4><a href="<?php echo $link; ?>">View Case Study</a></h4>
                <?php endif; ?>
            </figcaption>
        </figure>

        <?php endwhile; ?>
    <?php endif; ?>
</section>