Как получить значения мета-полей - Руководство WP tuts
Я прошел эти три руководства по созданию пользовательских метабоксов.
- wp.tutsplus.com/tutorials/reusable-custom-meta-boxes-part-1-intro-and-basic-fields/
- wp.tutsplus.com/tutorials/reusable-custom-meta-boxes-part-2-advanced-fields/
- wp.tutsplus.com/tutorials/reusable-custom-meta-boxes-part-3-extra-fields/
но я не знаю, как получить значения из отдельных полей. Я использовал этот PHP скрипт
$meta = get_post_meta($post->ID, $field['id'], true);
echo $meta;
но он не работает. Кто-нибудь знает, что я делаю неправильно.
вот мой файл function.php http://www.4shared.com/file/8jmKqGFY/functions.html?
а вот мой index.php http://www.4shared.com/file/iAWwZim7/index.html?

После проверки вашего кода есть несколько моментов, которые нужно изменить в зависимости от того, где хранятся метаданные.
Если попробуете:
$meta = get_post_meta( get_the_ID(), 'custom_text', TRUE );
echo 'Содержимое метаданных: ' . $meta;`
Это должно вернуть вам нужные метаданные.
Вы вызываете эту функцию для контента страницы, поэтому если метаданные не хранятся там, ничего не будет выведено.
Надеюсь, это поможет!

нет, это не работает, но я разобрался :) Решение такое
$meta = get_post_meta($post->ID, $field['custom_text'], true); echo $meta[custom_text][0];
Спасибо за помощь

Не забудьте принять ответ, чтобы в будущем люди знали, как прийти к решению, которое помогло вам. Это также вежливо.

Если вы не находитесь в файле шаблона, где нельзя использовать get_the_ID()
(например, в файле плагина), сначала получите указатель на объект записи, связанный с мета-контентом, а затем используйте $post->ID
.
Например, если вы использовали add_meta_box
для определения функции, отображающей метабокс (скажем, display_meta_box
), вы можете получить значение метабокса следующим образом:
function display_meta_box( $post ) {
$meta = get_post_meta($post->ID, "meta_key", true);
echo "<input name='x' value='$meta' />";
}
