2017-02-23 78 views
1

Я использую плагин Wordpress CMS и CMB2 для создания cmb-полей. Это идеальная комбинация, но я не могу получить текст из моих изображений, добавленных с помощью поля «файл» тип. Как обычно я зарегистрировать повторяемые поля и доведение их до FRONTEND этим:Gett image alt from cmb2 file custom field in loop (CMB2!)

<?php $successful_students_items = get_post_meta(get_the_id(), 'successful_students_block_box', true); 
            if(!empty($successful_students_items)) { 
            foreach($successful_students_items as $successful_students_item) { ?> 
           <div class="ipd-je-8 ipd-rz-8 ipd-pv-12 ipd-ke-24"> 
            <div class="rjeudirnskxzi nnu"> 
                 <div class="h1ge6swchqzj6de"> 
                  <div class="h1ge6swchqzj6de_cvz"> 
                  <figure class="o309iruhgtybgyu5"> 
              <blockquote><?php echo $successful_students_item['successful_students_block_testimonial']; ?> 
              <div class="ingi3h38d8jj4"></div> 
              </blockquote> 
              <img alt="" src="<?php echo $successful_students_item['successful_students_block_image']; ?>"/> 
              <div class="ewr4i9548jfdeuthie"> 
              <h5><?php echo $successful_students_item['successful_students_block_name_lastname']; ?> 
               <span> 
               <br> 
               <?php echo $successful_students_item['successful_students_block_position']; ?> 
               </span> 
              </h5> 
              </div> 
             </figure> 
                  </div> 
                 </div> 
                 </div> 
                </div> 
            <?php } 
            } ?> 

, но я не могу получить изображения альтернативный текст, попытался Google, но ничего из того, что я нашел работу .. Может быть, кто-нибудь может помочь? Благодаря!!

ответ

0

CMB всегда хранит идентификатор для изображений в момент его загрузки. Вам просто нужно захватить это следующим образом:

$successful_students_block_image_id = get_post_meta(get_the_id(), $successful_students_item['successful_students_block_image_id'], true); 
$gallery_image=wp_get_attachment_image($successful_students_block_image_id,'full'); 
echo $gallery_image; 

это даст вам изображение для этого изображения и распечатает изображение.

+0

ничего оказывается:. (((( – nito

+0

К сожалению, я могу ошибаться в некоторой части $ gallery_image = wp_get_attachment_image ($ successful_students_item ['success_students_block_image_id'], 'full'); echo $ gallery_image; – Tristup

+0

, пожалуйста, попробуйте приведенный выше код и дайте мне знать об этом. – Tristup

-1

Вы можете достичь своего требования бит альтернативным способом, значит, используя тип файла-файла CMB2 file_list, вы получите массив изображений. Поэтому использовать array_key, чтобы получить индивидуальный образ ID Е.Г.

Foreach (array_keys ($ successful_students_items) как $ successful_students_item_id) {

/** Теперь с помощью этого идентификатора вы можете получить индивидуальные данные вложения * */

$ success_students_block_image_alt = get_post_meta ($ success_students_item_id, '_wp_attachment_image_alt', true); $ success_students_block_image_url_details = wp_get_attachment_image_src ($ success_students_item_id, 'full');

/** это вернет массив **/ $ success_students_block_image_url = $ success_students_block_image_url_details [0];

} /** Теперь вы можете использовать эти индивидуальные данные в IMG тег **/

Смежные вопросы