尝试获取附件网址后未定义的网址

时间:2019-07-31 10:20:26

标签: php wordpress

在WordPress的后端,我有一个选项,用户可以在其中添加多个图像。然后explode中将这些图像li显示在$result .= $attachmentImage ? $attachmentImage['url'] : '';中,这仍然是目标。

但是我在$image = shortcode_atts( array( 'image' => 'image', ), $atts ); $image_ids = explode(',',$image['image']); $result = "<div class='imageCarousel'>"; $result .= "<div class='imageCarousel__container justify-content-center'>"; $result .= "<ul>"; foreach( $image_ids as $image_id ){ $result .='<li>'; $result .= 'test'. $image_id; $attachmentImage = wp_get_attachment_image_src( $image_id, 'full' ); $result .= $attachmentImage ? $attachmentImage['url'] : ''; $result .='</li>'; } $result .= "</ul>"; $result .= "</div>"; $result .= "</div>"; return $result; 上收到未定义的索引URL。

标记

var_dump($attachmentImage)

UINavigationController不返回任何内容吗?

1 个答案:

答案 0 :(得分:0)

根据代码,在调用短代码时,需要以逗号分隔添加有效的图像ID。

喜欢。

//image1 is name of shortcode, and 10,11,12 is valid id of image
echo do_shortcode('[image1 image=10,11,12]');

由于wp_get_attachment_image_src返回包含以下元素的数组,因此您正在接收“未定义的索引URL”。

[0] => url
[1] => width
[2] => height
[3] = >

因此,在代码中,您需要通过$ attachmentImage ['0']获取图片网址。

//$attachmentImage['0'] - will display the url of image
$result .= $attachmentImage ? $attachmentImage['0'] : '';