【问题标题】:Using Advanced Custom Field's Repeat to create a gallery使用高级自定义字段的重复创建图库
【发布时间】:2017-04-20 11:07:09
【问题描述】:

我正在使用 Owl Carousel 创建徽标的轮播画廊。我正在使用高级自定义字段的转发器功能来获取徽标的所有 url。这是画廊的标记:

<div id="clients">
   <?php
      $clients = get_field('client_carousel');
      $client_logo = get_field('client_logo');

      if( $clients ) {
    ?>
    <section>
       <div id="owl-clients" class="owl-theme owl-carousel">

       <?php foreach( $clients as $client_logo ): ?>
       <div class="item">
       <img class="featurette-image img-responsive center-block" src="<?php echo $client_logo['url']; ?>" alt="<?php echo $client_logo['alt']; ?>"></div>
       <?php endforeach; ?>

       </div>
   </section>
   <?php } ?>
</div><!--end clients-->

转发器字段名称为client_carousel,其中字段的字段名称为client_logo

我有一个工作演示 here。它可以识别组中的七个徽标,但我唯一无法获取的是 img src 的 url。

【问题讨论】:

    标签: php wordpress advanced-custom-fields owl-carousel


    【解决方案1】:

    有几点需要注意。您正在覆盖 $client_logo 变量,因此不确定这是否只是代码中的一个废弃工件,因为它看起来不像您使用它:

    $client_logo = get_field('client_logo');
    <?php foreach( $clients as $client_logo ): ?>
    

    另一件事是 ACF 中继器字段允许您选择字段类型“图像”的输出 - 假设这是您为“url”字段设置的内容。现在,假设您将“url”设置为图像,如果您希望返回原始 URL,则可以选择输出作为图像 URL 而不是默认的图像数组。

    假设你是这样设置的,那么它应该给你图片网址,而无需修改你的代码:

    <?php echo $client_logo['url']; ?>
    

    但是,我们不知道您的重复字段的架构,如果没有这些知识,我们将无法提供进一步的建议。更新您的帖子,如果此信息没有为您指明正确的方向,我可以更新此答案。

    【讨论】:

      猜你喜欢
      • 2016-01-09
      • 1970-01-01
      • 1970-01-01
      • 2019-09-26
      • 2019-07-14
      • 2013-11-25
      • 2014-03-23
      • 2019-11-07
      • 1970-01-01
      相关资源
      最近更新 更多