📜  acf get image id sub_field - PHP (1)

📅  最后修改于: 2023-12-03 15:29:17.175000             🧑  作者: Mango

使用 acf get image id sub_field - PHP 获取图片ID

如果你使用Advanced Custom Fields插件来处理WordPress网站的定制字段,使用acf get image id sub_field函数可以方便地获取子字段中的图片ID。

语法
acf_get_image_id($meta, $post_id, $size, $attr)
参数
  • $meta (required) - 用于获取图片ID的子字段名称(例如:image)。
  • $post_id (optional) - 获取图片的帖子ID。默认情况下,将使用当前帖子ID。
  • $size (optional) - 指定要检索的图像大小。默认情况下为“ full”。
  • $attr (optional) - 图像的属性。
返回值

返回图像的ID。

用法
$image_id = get_field('image_field', $post_id); // 获取父级字段
$sub_field = get_sub_field('sub_image'); // 获取子字段数组
$image_id = acf_get_image_id('image', $post_id, 'medium'); // 获取子字段中的图片ID
$image_url = wp_get_attachment_image_url($image_id, 'medium'); // 获取图像URL

使用此函数,您可以方便地获取子字段中的图像ID,并进一步在页面上显示它们。

代码示例

以下是一个完整的示例,演示如何使用acf get image id sub_field函数获取在子字段中指定的图像ID并将其显示在网页上:

<div class="entry-content">
  <?php if (have_rows('image_gallery')) : ?>
    <ul class="gallery-images">
      <?php while (have_rows('image_gallery')) : the_row(); ?>
        <li>
          <?php
          $image_id = acf_get_image_id('image', get_the_ID(), 'medium');
          $image_url = wp_get_attachment_image_url($image_id, 'medium');
          if ($image_url) :
          ?>
            <img src="<?php echo esc_url($image_url); ?>" alt="<?php echo esc_attr(get_the_title()); ?>" />
          <?php endif; ?>
        </li>
      <?php endwhile; ?>
    </ul>
  <?php endif; ?>
</div>

这个示例使用了acf_get_image_id函数,从image_gallery子字段中获取图像ID,然后使用wp_get_attachment_image_url函数来获取图像URL。 该URL随后用于显示图片。