正在检索帖子元数组(附件)

时间:2016-11-07 作者:arshidok

我有一个用于上传图像的post meta,最多允许5个文件。

数据存储如下:

a:5:{i:0;s:3:"694";i:1;s:3:"694";i:2;s:3:"697";i:3;s:3:"695";i:4;s:3:"696";}
问题是,我无法获取图像URL。我的代码:

                <?php $ppics = get_post_meta( get_the_ID(), \'shop_demosc\', false );
            $ppurl = wp_get_attachment_url($ppics);
            foreach ($ppics as $key => $ppurl){
                echo \'<img src="\'. print_r($ppurl) .\'">\';
            } ?>
此代码返回:

Array
 (
   [0] => 694
   [1] => 694
   [2] => 697
   [3] => 695
   [4] => 696
 )
怎么了?如何获取5幅图像的URL?

2 个回复
最合适的回答,由SO网友:jgraup 整理而成

你的var_dump 看起来它返回了一个数组,因为你通过了falseget_post_meta(). 你也不想print_r() 在上echo 线

检索帖子的帖子元字段。

  • $post_id (int)(必填)职位ID。
  • $key (字符串)(可选)要检索的元键。默认情况下,返回所有键的数据。默认值:“”$single (bool)(可选)是否返回单个值。默认值:false
    <?php 
    
    $ppics = get_post_meta( get_the_ID(), \'shop_demosc\', true );
    
    // if the value is an array of an array, just set to the first array
    if( is_array($ppics) && count($ppics) === 1 && is_array($ppics[0]) ){
        $ppics = $ppics[0];
    }
    
    foreach ( $ppics as $key => $attachment_id ) {
        $image_url = wp_get_attachment_url( $attachment_id );
        printf( \'<img src="%s">\', $image_url );
    } 
    
    ?>   
    

SO网友:Benoti

你需要搬家

    $ppurl = wp_get_attachment_url($value); // $value of the foreach
在foreach循环中

所以您的代码可能如下所示

  <?php $ppics = get_post_meta( get_the_ID(), \'shop_demosc\', true);// true to get the unserialize array directly

        foreach ($ppics as $key => $attachment_id){
            $ppurl = wp_get_attachment_url(attachment_id);
            echo \'<img src="\'. $ppurl .\'">\';
        } ?>

相关推荐

Column Images Showing Gaps

我正在使用带有Avada主题的Wordpress。在页面顶部,我有一个fusion滑块。下面我将设置一个包含2列的容器。我为每一列插入了一幅图像。我无法解决如何消除图像左右两侧的间隙(我需要它们转到屏幕边缘)以及融合滑块与下方两幅图像之间的间隙。谢谢