Intereting Posts
Где я могу получить «Информация об ошибке», чтобы добавить к вопросу? Где сохранить пользовательские символы nonces и CSRF в WordPress Всплывающее окно или уведомление администратора / обновления на экране редактирования страницы / страницы без обновления страницы. Предотвратите WordPress от аббревиатуры-long-slugs … -in-the-admin как динамически изменять название страницы в wordpress в соответствии с значением URL Саморазвитие или плагин как первый вариант? Структура пользовательского типа сообщений для сообщений с несколькими дочерними сообщениями Как отфильтровать сообщение из категории, а не ее подкатегории в панели инструментов WordPress wp_enqueue_scripts не попадает в очередь У нас есть In_category, как функция для тегов? Фронт-конец wp_editor не передает аудио / видео ссылки Есть ли способ сделать is_search () всегда возвращать false Заказ сообщений по пользовательской таксономии в области администрирования Разделите список на два столбца (get_posts) В облаке тегов нет разрывов строк

Как получить источник пользовательского мета-изображения?

Я работаю над шаблоном страницы CPT (пользовательский тип сообщения) и хотел бы получить источник пользовательского мета-изображения.

Для post_thumbnail это довольно просто с помощью wp_get_attachment_image_src() , но если я var_dump( $post->ID ) я не вижу значения для моего настраиваемого источника изображения мета-вложений.

Итак, как я могу получить идентификатор моего мета-образа, чтобы получить его источник? Благодаря 🙂

ОБНОВЛЕНИЕ Это то, что я получил.

 <?php $portfolio_image_one = get_post_meta( $post->ID, '_cmb_portfolio_image_one', true ); ?> <?php $portfolio_image_two = get_post_meta( $post->ID, '_cmb_portfolio_image_two', true ); ?> <?php $portfolio_image_three = get_post_meta( $post->ID, '_cmb_portfolio_image_three', true ); ?> <?php if ( has_post_thumbnail() ) { $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'large'); ?> <a class="featured-image" href="<?php echo $large_image_url[0] ?>" title="' . <?php the_title_attribute('echo=0') ?> . '"> <?php the_post_thumbnail('medium', array('class' => 'img-polaroid')); ?> </a> <?php } ?> 

В принципе, я хотел бы получить идентификатор для своих изображений post_meta, подобно методу эскизов.

Solutions Collecting From Web of "Как получить источник пользовательского мета-изображения?"

Пользовательский мета-образ? Что это?

Вы имеете в виду это,

  • вы вставляете изображение в настраиваемое поле (post meta field) внутри вашего мета-поля?

  • вы вставляете изображение в качестве прикрепления сообщения или миниатюры?

Это две разные вещи, с которыми приходится сталкиваться,

 add_post_meta 

другой,

 wp_insert_attachment 

Последний из которых вставляет вложения в медиатеку, связанную с вашей wp_posts базы данных wp_posts .

С другой стороны, сообщение meta (т.е. add_post_meta т. Д.) wp_postmeta' с вашей wp_postmeta' базы данных wp_postmeta' .

Вложения на самом деле классифицируются как post_type только post_type post или page или ваш custom_post_type например.

Вложения в качестве типа сообщения могут или не могут также быть связаны с идентификатором Post, сохраненным как целое число в столбце wp_posts базе данных wp_posts . Если установлено значение 0 , это означает, что вложение не имеет родителя и не связано с каким-либо конкретным сообщением.

Теория в сторону …

Вы вполне можете попытаться получить доступ к приложению, которое просто не существует в первую очередь.

 $attachment_id = 20; //example ID of the attachment you want to retrieve $attachment = wp_get_attachment_image_src( $attachment_id ); echo $attachment[0]; 

Указанный выше код полезен для получения вложения, которое не связано с каким-либо конкретным сообщением.

 $post_id = 100; //example post ID $attachment = wp_get_attachment_thumb_url( $post_id ); echo $attachment; //returns the URL of the image attached to the post 

Если для получения значения, независимо от того, что это значение, при работе с метатом сообщения (как вы называете обычным мета-изображением ), необходимо использовать,

 get_post_meta 

В использовании,

 $post_id = get_the_ID(); $meta = get_post_meta($post_id, 'your_meta_key'); echo $meta; 

Ссылки API

  • WordPress API: add_post_meta
  • API WordPress: wp_get_attachment_image_src
  • API WordPress: wp_get_attachment_thumb_url
  • API WordPress: wp_insert_attachment
  • WordPress API: get_post_meta

ОБНОВИТЬ

Основываясь на вашем коде,

 $portfolio_image_one = get_post_meta( $post->ID, '_cmb_portfolio_image_one', true ); 

Значение post_meta сохраняется в вашей переменной,

 $portfolio_image_one 

Что вам нужно сделать,

 echo $portfolio_image_one; 

Иначе ничего не произойдет.

Если есть значение, сохраненное для meta_key то есть _cmb_portfolio_image_one то, повторив результат переменной, вам будет представлен ваш meta_value независимо от того, что это такое, например, http://img.wordpressask.com/custom-post-types/my_image.jpg .

Если $ post-> ID используется вне цикла, вы столкнулись с проблемой, следовательно, обратитесь к моему предыдущему примеру, но с вашим кодом,

 $post_id = get_the_ID(); $portfolio_image_one = get_post_meta($post_id, '_cmb_portfolio_image_one', true); echo $portfolio_image_one;