простой массив изображений php из пользовательского поля WordPress

Я пытаюсь использовать 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. В идеале я мог бы делать другие вещи, используя тот же массив. Например, замените «-Th.jpg» на «-X3.jpg», так как это больший размер того же изображения. И прочее; сначала нужно пройти шаг 1.

Спасибо!


person Cliff P    schedule 14.08.2011    source источник
comment
Ваш вызов get_post_meta возвращает массив URL-адресов изображений? Не уверен, что правильно понимаю установку.   -  person Jon Gauthier    schedule 14.08.2011
comment
Функция описана здесь: codex.wordpress.org/Function_Reference/get_post_meta — она просто возвращает значение, а не конкретно в массиве, насколько я понимаю. Но я подумал, что если я введу «image1.jpg», «image2.jpg» и т. д. в custom_field_name, то он уже будет отформатирован как массив PHP. Если есть лучший способ, не проблема. Я просто пытаюсь избежать наличия 1 настраиваемого поля на изображение - дополнительное обслуживание для меня и дополнительные вызовы базы данных. Большое спасибо!   -  person Cliff P    schedule 15.08.2011


Ответы (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
}
person user897145    schedule 16.08.2011
comment
Эй, отличный материал, чувак. Большое спасибо! Мне срочно нужна помощь, поэтому мы работаем над этим здесь: wpquestions.com/question/ показать/идентификатор/2848 - person Cliff P; 17.08.2011