У меня есть стандартный цикл WordPress, отображающий элементы:
$loop = new WP_Query( array(
'post_type' => 'images',
'orderby' => 'menu_order',
) );
while ( $loop->have_posts() ) : $loop->the_post();
/* loop code, HTML mostly, a few if statements, nothing special */
endwhile;
Теперь я хочу отобразить НЕКОТОРЫЕ данные из мета-боксов, и тут возникает проблема.
the_meta() работает просто отлично, но get_post_meta() не работает вообще.
Почему это происходит? Есть исправления? Мне нужно сделать что-то вроде get_post_meta($post->ID, ‘metabox_field’, true).
Есть идеи?
[Обновить]
Хорошо. Подробнее.
У меня есть пользовательский тип сообщений под названием «изображения».
У каждого элемента изображения есть собственный метабокс с несколькими полями внутри, назовем их image_date, image_author, copyrights.
Я хочу отобразить автора изображения из поля с именем image_author, поэтому:
<?php
$author = get_post_meta($post->ID, 'image_author', true);
echo $author;
?>
Проблема в том, что он работает ТОЛЬКО, когда я открываю ОДНО изображение (single-image.php), но не в цикле (и я также хочу отображать эти данные для каждого элемента в цикле).
The_meta() работает в обоих местах, если что-то меняет.
Моя петля выглядит точно так же, как указано выше.
Думаю, это все 🙂
? 🙂
Я считаю, что это работает только внутри предметов/горшков, но не с петлями. По крайней мере не для меня… 🙁
Не работает в каком качестве? Было бы очень полезно, если бы вы могли предоставить подробную информацию о том, что вы пытались, что вы ожидали, что произошло на самом деле и т. Д. «Не работает» на самом деле не помогает понять проблему.
@ t31os, извините, взгляните на [обновление].
@WordPressor — В какие файлы вы добавляете этот код цикла? А также какие URL-адреса вы запрашиваете, когда ожидаете увидеть эти результаты? Кроме того, у каждого из этих сообщений есть это мета-поле (определенно)?
Функция get_post_meta() работает внутри и снаружи цикла, и вы говорите, что видите, как она работает с одним изображением, « но не в цикле », что означает, что вы, вероятно, не добавили код в правильный цикл.
Чтобы было ясно, он работает со всеми типами сообщений.