php
  • wordpress
  • 2015-08-28 2 views 1 likes 
    1

    У меня есть собственный PHP рамка в моей теме Wordpress, как это:Получить каждые изображения в теле в Wordpress

    foreach ($myprojects as $post){ 
         setup_postdata($post); 
    
         $output .= '<div class="col-xs-6 col-sm-3">'; 
         $output .= '<div class="portfolio-item">'; 
    
         if (has_post_thumbnail($post->ID)) { 
          $thumb   = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
          $large_image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'full'); 
          $content  = get_post_field('post_content', $post_id); 
    
    
          $output .= '<img class="img-responsive" src="'.$thumb[0].'" title="" alt="">'; 
         }else{ 
          $output .= '<img class="img-responsive" src="images/work_1.jpg" title="" alt="">'; 
         } 
    
         $post_id = get_the_title($post->ID); 
         $post_name = CFS()->get('project_name', ''); 
    
         $output .= '<a class="overlay" rel="shadowbox" href="'.$large_image[0].'">'; 
         $output .= '<p class="btn-preview">'.$post_id.'</p>'; 
         $output .= '</a>'; 
    
         $output .= '</div>'; 
         $output .= '</div>'; 
    
         $count++; 
         $index++; 
        } 
    

    Да, он отлично работает. Когда я нажимаю тег a, откройте $large_image через prettyPhoto. Но этот код для одного изображения. Я хочу, чтобы миниатюры оставались такими же, но когда вы нажимаете на ссылку, откройте это несколько изображений через prettyPhoto. Итак, импортировано 2 изображения в тело сообщения и хотите показать эти изображения.

    В двух словах, этот код:

    $large_image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'full'); 
    

    Должно быть так:

    $large_image = wp_get_attachment_image_src($body($post->ID), 'full'); 
    

    Но я знаю, это не правильный код. Его псевдо.

    Как я могу исправить свою проблему? Благодарю.

    ответ

    0

    Изменить решение проблемы с fancyBox, использовать data-fancybox-group и немного знаний Wordpress/PHP ... вот и все!

    foreach ($myprojects as $post){ 
         setup_postdata($post); 
    
         $output .= '<div class="col-xs-6 col-sm-3">'; 
         $output .= '<div class="portfolio-item">'; 
    
         if (has_post_thumbnail($post->ID)) { 
          $thumb   = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
          $large_image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'full'); 
          $content  = get_post_field('post_content', $post_id); 
    
    
          $output .= '<img class="img-responsive" src="'.$thumb[0].'" title="" alt="">'; 
         }else{ 
          $output .= '<img class="img-responsive" src="images/work_1.jpg" title="" alt="">'; 
         } 
    
         $post_id = get_the_title($post->ID); 
         $post_name = CFS()->get('project_name', ''); 
    
         $output .= '<a class="overlay test fancybox" data-fancybox-group="'.$post->ID.'" href="'.$large_image[0].'">'; 
         $output .= '<p class="btn-preview">'.$post_id.'</p>'; 
         $output .= '</a>'; 
    
         $output .= '</div>'; 
         $output .= '</div>'; 
    
         $attached_images = get_attached_media('image', $post->ID); 
         foreach($attached_images as $image){ 
         $large_attached_image = wp_get_attachment_image_src($image->ID,'full'); 
         if($large_image[0] != $large_attached_image[0]){ 
         $output .= '<a class="overlay test fancybox" data-fancybox-group="'.$post->ID.'" style="display:none" href="'.$large_attached_image[0].'"></a>'; 
         } 
         } 
    
         $count++; 
         $index++; 
        } 
    
    Смежные вопросы