在高级自定义域循环中停留在图像上

时间:2019-12-08 作者:Henry

  <?php

  // check if the repeater field has rows of data
  if( have_rows(\'tool_card\') ):

    // loop through the rows of data
      while ( have_rows(\'tool_card\') ) : the_row();

          // display a sub field value
          the_sub_field(\'title\');

          <img src="<?php the_sub_field(\'tool_image\');?>">

      endwhile;

  else :

      // no rows found

  endif;

  ?>
使用插件高级自定义字段时,不会加载上面的图像。。。

我知道我在做一件有点愚蠢的事,但我想不出来。如果有人熟悉这个插件,我真的很感激这里有一个指针。。。

谢谢

非常欢迎所有解决方案,谢谢

1 个回复
SO网友:alexwc_

这可能是显而易见的,但问题在于<img src="<?php the_sub_field(\'tool_image\');?>">.

the_sub_field(\'field_name\') 将输出字段的内容,我认为在您的情况下,这将是一个图像标记。在你的情况下,你应该使用get_sub_field(\'field_name\'). 使用get_ 将返回值。对于下面的#1,返回值将非常方便。

我已经有一段时间没有看过ACF Pro文档了,但请尝试以下内容:

1.) 如果已将图像字段返回值设置为array:

<?php
$image = get_sub_field(\'tool_image\');
?>
<img src="<?php echo esc_url($image[\'url\']); ?>" alt="<?php echo esc_attr($image[\'alt\']); ?>" />
***请记住,这是一个基本示例。返回的数组将为您提供所有正确的大小/URL。通过梳理这些数据,您将能够获得预期/适当的图像大小/url。

2. ) 如果已将图像返回值设置为ID。

<?php
$image = get_sub_field(\'tool_image\');
$size = \'full\'; // (thumbnail, medium, large, full or custom size)
if( $image ) {
  echo wp_get_attachment_image( $image, $size );
}

You can find the docs here.

相关推荐

Testing Plugins for Multisite

我最近发布了一个WordPress插件,它在单个站点上非常有效。我被告知该插件在多站点安装上不能正常工作,我理解其中的一些原因。我已经更新了代码,现在需要一种方法来测试更新后的代码,然后才能转到实时客户的多站点安装。我有一个用于测试的WordPress安装程序的单站点安装,但需要在多站点安装上进行测试。根据我所能找到的唯一方法是在网络上至少有两个站点来安装整个多站点安装,以测试我的插件。设置WordPress的整个多站点安装是插件开发人员的唯一/首选方式,还是有更快的测试环境可用。