当前位置: 首页 > 知识库问答 >
问题:

如何在高级自定义字段wordpress post中获取图像url

张森
2023-03-14

我创建了一个名为“albums”的自定义帖子类型。我有5个自定义字段在我的每个职位。3个文本字段、1个图像字段和1个文件上载字段。我在我的模板页面中得到了3个正确的文本值。但我无法获取图像和文件上传字段的url部分。这是我的密码:

<?php

$posts = get_posts(array(
'post_type' => 'albums'
));

if($posts)
{
echo '<ul>';

foreach($posts as $post)
{
    echo '<li><a href="' . get_permalink($post->ID) . '">' . get_the_title($post->ID) . '</a></li>';
         the_field('album_category'); echo "<br>";
          the_field('album_name'); echo "<br>";
           the_field('slide_name'); echo "<br>";
            the_field('slide_description'); echo "<br>";
            the_field('audio_file'); echo "<br>";
}

echo '</ul>';
}

?> 

这是我当前的输出

布谷鸟-1
鸟类
布谷鸟
662668245306_027; a56fe50_b.,图像/jpeg,http://localhost/YIB/wordpress/wp-content/uploads/2016/03/2668245306_027a56fe50_b-1.jpg,1024768,数组
样本
18,Eudynamis scolopacea,“Eudynamis scolopacea”,音频/mpeg, http://localhost/YIB/wordpress/wp-content/uploads/2016/03/eudynamys-scolopacea.mp3

共有3个答案

严兴言
2023-03-14

上载到媒体库的图像、视频或文件等媒体的自定义字段以数组形式另存为元。您可以尝试使用这个简单的函数从自定义字段的元数据中提取URL值。此函数遍历数组,并在元值中检测到有效URL时返回URL元值。

将此函数添加到functions.php。

function get_post_asset_url($postid, $slug) {
  $meta_array = get_post_meta($postid, $slug, true);
  foreach ($meta_array as $meta) { 
    if (filter_var($meta, FILTER_VALIDATE_URL)){ return $meta; } 
  } 
}

在您的模板中,在"echo"语句中调用此函数:

echo get_post_asset_url($post->ID, "your_asset_field_name");

例如,在图像字段上:

<img src="<?php echo get_post_asset_url($post->ID, "image_field_1"); ?>" width="100" height="100">
南门鸿振
2023-03-14

试试这个。

图像字段和文件字段返回数组

$image_m =  get_field('slide_description');
$image_a = get_field('audio_file');
echo '<pre>';
print_r($image_m);
print_r($image_a);
echo '</pre>';

假设你把这本书出版了

array(
 ['name'] => 'test';
 ['url'] => 'http://example.mp3';

)

然后写

常雪风
2023-03-14

试试这个

    <?php
    $imgurl = get_field('slide_image',$post->ID);

    if (filter_var($imgurl, FILTER_VALIDATE_URL) === FALSE)
    {
      $imgurl = wp_get_attachment_url($imgurl);
    }
       echo '<img src="' . $imgurl . '" alt="image">';
    ?>
 类似资料:
  • 我已经安装了一个高级自定义字段插件来上传音频和图像文件。每个帖子包含5个字段 我可以发布文章,但我不知道如何检索wordpress模板页面中的每个字段

  • 我在修改我安装的WordPress流行帖子插件时遇到了一些问题。 它可以选择从自定义字段获取缩略图,我已将其输入为“image_facebook”。但是缩略图没有显示。 在检查代码时,我发现imgsrc有post id而不是返回图像URL。 我已经把问题缩小到我安装的另一个插件http://wordpress.org/plugins/advanced-custom-fields/ 当它处于活动状态

  • 所以我在一个以FoundationPress为主题的wordpress站点上工作,最近我将ACF升级到了Pro版本,允许repeater字段。所以我试着让客户用中继器添加新的社交媒体帐户。 http://imgur.com/ft58spd http://imgur.com/mydpawl 上面您可以看到中继器是如何在后端设置的。 header.php: 没有任何东西输出到HTML中。 如果我遗漏了

  • 我在Wordpress中有一个名为“svg”的ACF字段菜单 为了创建我的菜单,我这样做: 我像这样显示我的菜单: 在我的Foreach中,我试图从我的菜单中调用我的ACF字段,如下所示: 但它不起作用(空)。我迷路了。如何获取我的 ACF 字段? 真是太感谢你了

  • 我想为我在高级自定义字段的WYSISWG编辑器字段中发布的每个图像添加一个类。除了其他编辑器类之外,每个图像都应该有类。 如果我在普通的WordPress编辑器中添加图像,我已经设法添加了这个类。这是我的中的代码: 但是该代码不适用于高级自定义字段的WYSISWG编辑器字段。还有其他方法可以在内容中添加图像吗?

  • 我使用的是Liferay 6.1 CE版本。我在控制面板的用户实体中添加了自定义属性。我想在create_account中添加这个自定义字段。jsp钩子页。我是这样加的。 之后,我尝试在UserLocalService钩子类中获取这个值,该类扩展了UserLocalServiceWrapper类-(钩子)。我从中找到每个值,但无法获得自定义字段值。 我正试图获得这样的自定义字段值。 但我得到的是空