Intereting Posts
WP_Query со смещением и 'orderby' => 'rand', смещение не работает Стоп / Пауза WordPress Heartbeat с использованием Javascript Shortcode обрабатывается неправильно из-за heredoc Могу ли я подключиться к пользовательскому процессу приглашения, чтобы проверить, что его адрес электронной почты указан из определенного домена? крючки и фильтры и переменные проблема миграции файлов с https на сайт http mock – как увидеть сайт-макет Где установлены $ current_user-> allcaps? Вложенные вызовы: фильтр the_content После восстановления пароля переадресуйте на индексную страницу Меню виджетов не отображается под «Внешний вид» на панели управления используя wp_enqueue_script для присоединения jquery-ui Плагин jQuery version VS Theme jQuery version: поиск лучшей практики Пустой / Белый на некоторых частях страниц Организация загруженных носителей с помощью wp_insert_post () и wp_handle_upload в соответствии с параметром времени Как удалить тег?

Отображение изображения в мета-коробке

У меня есть некоторые проблемы с отображением информации из моего настраиваемого мета-поля в моем индивидуальном типе сообщений. Я использую многоразовые пользовательские метатеги WordPress от Tammy Hart.

Я могу отображать текстовые поля, используя это:

<?php echo get_post_meta($post->ID, $prefix.'hjemmeside', true); ?> 

Но я не могу получить изображение для отображения, вместо этого DEBUG сообщает мне, что это «Неопределенная переменная: post_meta_data in». В настоящее время я использую этот скрипт:

 <?php $custom_image = $post_meta_data['image'][0]; echo wp_get_attachment_image($custom_image, 'thumbnail'); ?> 

Это неправильно? Идентификатором для метафайла изображения является «образ».

Это мой файл functions.php (только часть мета-окна):

 include (TEMPLATEPATH . '/metaboxes/meta_box.php'); $prefix = 'sample_'; $fields = array( array( // Hjemmeside 'label' => 'Hjemmeside', // <label> 'desc' => 'Skriv inn hjemmesiden til butikken her.', // description 'id' => $prefix.'hjemmeside', // field id and name 'type' => 'text' // type of field ), array( // Facebook 'label' => 'Facebook', // <label> 'desc' => 'Skriv inn facebookadressen til butikken her.', // description 'id' => $prefix.'facebook', // field id and name 'type' => 'text' // type of field ), array( // Telefon 'label' => 'Telefon', // <label> 'desc' => 'Skriv inn telefonnummeret til butikken her.', // description 'id' => $prefix.'telefon', // field id and name 'type' => 'text' // type of field ), array( // Mailadresse 'label' => 'Mailadresse', // <label> 'desc' => 'Skriv inn mailadressen til butikken her.', // description 'id' => $prefix.'mailadresse', // field id and name 'type' => 'text' // type of field ), array( // Senterbeliggenhet 'label' => 'Senterbeliggenhet', // <label> 'desc' => 'Skriv inn hvor butikken er plassert i senteret.', // description 'id' => $prefix.'senterbeliggenhet', // field id and name 'type' => 'textarea' // type of field ), array( // Logo 'label' => 'Logo', // <label> 'desc' => 'Last opp logoen til butikken her.', // description 'id' => $prefix.'image', // field id and name 'type' => 'image' // type of field ), ); /** * Instantiate the class with all variables to create a meta box * var $id string meta box id * var $title string title * var $fields array fields * var $page string|array post type to add meta box to * var $js bool including javascript or not */ $sample_box = new custom_add_meta_box( 'sample_box', 'Butikkinformasjon', $fields, 'butikker', true ); 

Кроме того, вот ссылка на файл meta_box.php , который содержит все коды, относящиеся к мета-полям 🙂

Вот результат var_dump(get_post_custom($post->ID));

 array(11) { ["_edit_last"]=> array(1) { [0]=> string(1) "1" } ["_edit_lock"]=> array(1) { [0]=> string(12) "1363962761:1" } ["_thumbnail_id"]=> array(1) { [0]=> string(2) "58" } ["sample_text"]=> array(1) { [0]=> string(11) "99 88 99 88" } ["sample_image"]=> array(1) { [0]=> string(1) "0" } ["sample_hjemmeside"]=> array(1) { [0]=> string(21) "www.ethic-clinique.no" } ["sample_facebook"]=> array(1) { [0]=> string(31) "www.facebook.com/ethic-clinique" } ["sample_telefon"]=> array(1) { [0]=> string(11) "99 88 99 88" } ["sample_mailadresse"]=> array(1) { [0]=> string(22) "post@ethic-clinique.no" } ["sample_senterbeliggenhet"]=> array(1) { [0]=> string(42) "Tredje butikken til høyre i andre etasje." } ["sample_logo"]=> array(1) { [0]=> string(42) "Tredje butikken til høyre i andre etasje." } } 

Новый var_dump:

 array(12) { ["_edit_last"]=> array(1) { [0]=> string(1) "1" } ["_edit_lock"]=> array(1) { [0]=> string(12) "1363964314:1" } ["_thumbnail_id"]=> array(1) { [0]=> string(2) "58" } ["sample_text"]=> array(1) { [0]=> string(11) "99 88 99 88" } ["sample_image"]=> array(1) { [0]=> string(2) "58" } ["sample_hjemmeside"]=> array(1) { [0]=> string(21) "www.ethic-clinique.no" } ["sample_facebook"]=> array(1) { [0]=> string(31) "www.facebook.com/ethic-clinique" } ["sample_telefon"]=> array(1) { [0]=> string(11) "99 88 99 88" } ["sample_mailadresse"]=> array(1) { [0]=> string(22) "post@ethic-clinique.no" } ["sample_senterbeliggenhet"]=> array(1) { [0]=> string(42) "Tredje butikken til høyre i andre etasje." } ["sample_logo"]=> array(1) { [0]=> string(42) "Tredje butikken til høyre i andre etasje." } ["sample_repeatable"]=> array(1) { [0]=> string(74) "a:1:{i:0;a:3:{s:5:"image";s:2:"89";s:5:"title";s:0:"";s:4:"desc";s:0:"";}}" } } 

Цените любую помощь по этому поводу 🙂

Solutions Collecting From Web of "Отображение изображения в мета-коробке"

Я не знаю точно, как работает этот плагин, и вы опубликовали код, который, вероятно, отсутствует в контексте, но вам нужно определить $post_meta_data перед запуском строки:

 $custom_image = $post_meta_data['image'][0]; 

Кажется, что плагин использует post meta, поэтому вам нужно что-то вроде этого:

 <?php echo get_post_meta($post->ID, $prefix.'hjemmeside', true); ?> 

Но переписан, чтобы сохранить данные как переменную, а не echo . Угадай, основываясь на коде, который вы опубликовали, я считаю, что вам нужно:

 $post_meta_data = get_post_meta($post->ID, $prefix.'image', true); if (!empty($post_meta_data[0])) { $custom_image = wp_get_attachment_image($post_meta_data[0], 'thumbnail'); } echo $custom_image; // if desired 

Непроверенный, но имеет хорошие шансы на работу.

Попробуй это:

 get_post_meta(get_the_id(),'hjemmeside', true); 

Предполагается, что hjemmeside – это имя вашего настраиваемого поля.