如何用逗号列出wordpress附件网址?

时间:2018-06-07 09:04:51

标签: wordpress

我的帖子上有一个图片库字段,我可以添加多个图片。

我需要在data-thumb"url1,url2,url3"内的逗号中列出附件网址。如何在下面的功能中用逗号分隔拇指?

function multi_thumbs_array(){
    global $post;
        $images = get_post_meta( $post->ID, 'images', true );
      if( $images ):
        $size = 'thumbnail';
            foreach( $images as $image ):
              echo wp_get_attachment_image_url($image, $size);
            endforeach;
      endif;
 }

也试过这个:

function multi_thumbs_array(){
    global $post;
        $images = get_post_meta( $post->ID, 'images', true );
      if( $images ) {
        $size = 'thumbnail';
            foreach( $images as $image ) {
              $thumbs = wp_get_attachment_image_url($image, $size);
         }
     }
     if( is_array($thumbs) ){
        return implode(',', $thumbs);
    }

    return false;
 }

上面的代码正在运行,但其列表网址没有任何逗号。我试图在内爆中使用multi_thumbs_array()但是当我这样做时它不起作用。 三江源!

1 个答案:

答案 0 :(得分:0)

您需要稍微调整一下代码。 F.E. $ thumbs应该是一个数组,而不是一个字符串。

function multi_thumbs_array(){
    global $post;
    $thumbs=array();
    $images = get_post_meta( $post->ID, 'images', true );

    if( $images ) {
        $size = 'thumbnail';

        foreach( $images as $image ) {
            $thumbs[] = wp_get_attachment_image_url($image, $size);
        }
    } else {
        $get_first_image=get_attached_media( 'image', $post->ID );    
        $get_first_image=array_shift( array_values($get_first_image) );
        $thumbs_arr = wp_get_attachment_image_src( $get_first_image->ID );
        $thumbs[] = $thumbs_arr[0];
    }

    /* no need to check if $thumbs is array as it is 
       declared in array and it's type doesn't get modified in the code */

    return implode(',', $thumbs); //returns empty string if $thumbs is empty
}