Как получить и отобразить данные meta box на странице
Я пытаюсь создать Meta Box с 3 полями текстового редактора для произвольного типа записи.
Meta Box отображается и, похоже, сохраняет данные для записей произвольного типа, но я не могу получить эти данные для отображения на странице single-[custom-post-type].php.
Недавно я попробовал следующий код для отображения данных Meta Box на странице:
global $post;
$meta = get_post_meta($post->ID, 'my-info', true );
if ($meta != '') {
echo $meta
} else {
echo "Невозможно отобразить содержимое";
}
Я не уверен, связана ли проблема с созданием/сохранением Meta Box, из-за чего я не могу отобразить данные. Буду признателен, если кто-нибудь укажет мне правильное направление.
Вот ссылка на код, который я использую для своего Meta Box, если это поможет:

Для отображения метаданных типа записи на шаблоне отдельной страницы, предполагается, что вы находитесь в цикле (Loop).
// Используйте get_the_ID() для получения ID через API-функцию
echo get_post_meta( get_the_ID(), 'my-info', true );
// Также можно вызвать его из глобальной переменной, так как запрос относится к текущей отдельной странице
echo get_post_meta( $GLOBALS['post']->ID, 'my-info', true );
Если вы не получаете никакого вывода, возможно, стоит проверить полный набор пользовательских данных записи:
printf( '<pre>%s</pre>', var_export( get_post_custom( get_the_ID() ), true ) );

Используйте идентификаторы полей для получения метаданных соответствующих полей, как показано в следующем коде.
global $post;
$meta = get_post_meta($post->ID,'myinfo-box1', true); // Используйте myinfo-box1, myinfo-box2, myinfo-box3 для соответствующих полей
if ($meta != '') {
echo $meta;
} else {
echo "Невозможно отобразить содержимое";
}

Иногда атрибут id не работает, тогда можно использовать атрибут name.
Для вывода значений метабокса ваш код должен находиться внутри цикла.
$meta = get_post_meta($post->ID,'meta-box-text', true);
Здесь meta-box-text - это атрибут name моего текстового поля.
У меня это работает идеально.
