【问题标题】:easy php array of images, from a WordPress custom field简单的 php 图像数组,来自 WordPress 自定义字段
【发布时间】:2011-08-14 13:53:49
【问题描述】:

我正在尝试为一堆图像使用 1 个自定义字段 - 对所有图像执行相同的操作。我可以将它们存储在自定义字段中,但是建议这样做,但我认为这种格式是最好的,因为我认为这就是 PHP 数组的用途:

'http://images.domain.com/image1-Th.jpg',
'http://images.domain.com/image1-Th.jpg',
'http://images.domain.com/image3-Th.jpg'

所以,一旦我为帖子输入了自定义字段值,下面是我的非工作 PHP 代码:

<?php //og images
    $ogimagepre = '<meta property="og:image" content="';
    $ogimagepost = '"/>';
    global $wp_query; $postID = $wp_query->post->ID;
    $photosfull = array(get_post_meta($postID, 'custom_field_name', true));
    echo $ogimagepre.$photosfull.$ogimagepost
?>

你可以看到我正在尝试得到这个结果:

<meta property="og:image" content="http://images.domain.com/image1-Th.jpg"/>
<meta property="og:image" content="http://images.domain.com/image2-Th.jpg"/>
<meta property="og:image" content="http://images.domain.com/image3-Th.jpg"/>

这是第 1 步。理想情况下,我可以使用同一个数组做其他事情。比如用“-X3.jpg”替换“-Th.jpg”,因为那是同一张图片的更大尺寸。和其他东西;需要先通过Step1。

谢谢!

【问题讨论】:

  • 您的get_post_meta 调用是否返回图像 URL 数组?不确定我是否正确理解了设置。
  • 这里描述了该函数:codex.wordpress.org/Function_Reference/get_post_meta - 它只是返回值,而不是专门在我理解的数组中。但我想如果我在 custom_field_name 中输入 'image1.jpg'、'image2.jpg' 等,那么它已经被“格式化”为 PHP 数组。如果有更好的方法,没问题。我只是想避免每个图像有 1 个自定义字段——对我来说额外的维护和额外的数据库调用。非常感谢!

标签: arrays wordpress facebook-opengraph custom-fields


【解决方案1】:

我遇到了类似的问题,我希望将单个元键下的图像作为唯一元素返回。试试这个:

$ogimagepre = '<meta property="og:image" content="';
$ogimagepost = '"/>';
global $wp_query; $postID = $wp_query->post->ID;
$photos =get_post_meta($postID, 'custom_field_name', true);

foreach ($photos as $photo){

    echo $ogimagepre.$photo.$ogimagepost
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多