我正在尝试为wordpress高级自定义字段(ACF)转发器字段显示图像标题,并且没有任何运气可以使用以下三个选项:
<?php if($middle_image['image']): ?>
<?php $midimage = wp_get_attachment_image_src($middle_image['image']); ?>
<?php $caption = $midimage->post_excerpt; ?>
<?php $captiontwo = $middle_image['image']['caption'] ?>
<?php $captionthree = $middle_image['image']->post_excerpt; ?>
<?php $alt = get_post_meta($middle_image['image'], '_wp_attachment_image_alt', true); ?>
<?php $main_image = wp_get_attachment_image_src($middle_image['image'], 'two-column-cropped' ); ?>
<div class="two-column-cropped"><img src="<?php echo $main_image[0]; ?>" alt="<?php echo $alt ?>" />
<?php if($caption) { ?>
<div class="image_caption"><?php echo $caption; ?></div>
<?php } ?>
</div>
<?php endif; ?>
任何建议将不胜感激。感谢。
答案 0 :(得分:0)
wp_get_attachment_src()
无法获取有关图像的任何数据。您可能需要wp_get_attachment_metadata()
但我认为您最好更改ACF字段以返回图像对象(实际上是数组)而不是图像ID(我假设您现在拥有它)。
ACF可以为图像字段返回以下三种内容之一:图像src URL,附件ID(可以传递给wp_get_attachment_image_src()
等功能),或附件信息作为一个数组。
您可以使用var_dump($middle_image)
或var_dump($midimage)
我认为$middle_image
是您的转发字段。
只要正确配置ACF以返回图像对象(而不是图像URL或ID),您只需删除此行:
<?php $midimage = wp_get_attachment_image_src($middle_image['image']); ?>
然后使用$middle_image['image']['caption']