2016-10-11 5 views
0

다음 코드가 왜 숫자 1을 반환하는지 알 수 있을지 궁금합니다. 누구든지 이런 일이 일어나지 않게하는 방법을 알고 있습니까? (가) 포함 내부Wordpress Shortcode Return Number 1? 제거하는 방법?

function get_product_images_slider() { 
$product_image_output = include(get_stylesheet_directory() . '/product-images-shortcode.php'); 
return $product_image_output; 
} 
add_shortcode('product-images', 'get_product_images_slider'); 

내 코드는 다음과 같습니다

      <ul class="slick js-fader"> 
          <li> 
           <?php $image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'single-post-thumbnail');?> 
           <img src="<?php echo $image[0]; ?>" class="figure" width="425" height="328" itemprop="image" /> 
          </li> 
          <?php 
           global $product; 
           $attachment_ids = $product->get_gallery_attachment_ids(); 

           foreach($attachment_ids as $attachment_id) 
           { ?> 
            <li> 
             <?php 
              echo wp_get_attachment_image($attachment_id, 'product-image', '', array("class" => "figure", 'width' => '425', 'height' => '328', 'itemprop' => 'image')); 
             ?> 
            </li> 
          <?php } 
          ?> 
         </ul> 

답변

1

include function는 항상 숫자 하나가 성공적으로 포함하는 경우를 반환하고, 당신은 변수에이 할당된다. 마지막에이 변수를 반환합니다. 당신은 어떤 결과를 기대합니까?

편집 : 우리는 코드에서를

제품 이미지-shortcode.php

<?php function productShortcode() { ?> 
    <ul class="slick js-fader"> 
     <li> 
      <?php $image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'single-post-thumbnail');?> 
      <img src="<?php echo $image[0]; ?>" class="figure" width="425" height="328" itemprop="image" /> 
     </li> 
     <?php 
     global $product; 
     $attachment_ids = $product->get_gallery_attachment_ids(); 
     foreach($attachment_ids as $attachment_id) 
     { ?> 
      <li> 
       <?php 
       echo wp_get_attachment_image($attachment_id, 'product-image', '', array("class" => "figure", 'width' => '425', 'height' => '328', 'itemprop' => 'image')); 
       ?> 
      </li> 
     <?php 
     } ?> 
    </ul> 
<?php } ?> 

functions.php 그래서

function get_product_images_slider() { 
    include(get_stylesheet_directory() . '/product-images-shortcode.php'); 
    return productShortcode(); 
} 
add_shortcode('product-images', 'get_product_images_slider'); 

사용 : 여기에 사용하는 데 필요한 코드는 incude의 값을 직접 반환하는 것이 아니라 포함하는 것.

+0

안녕하세요, 웹 사이트가 woocommerce이기 때문에 포함은 제품 페이지에서 갤러리 이미지를 가져 오는 파일 일뿐입니다. – heady12

+0

코드를 편집하여 번호 1을 반환하지 않습니까? 필자는 HTML 내에서 PHP를 사용하기 전에 숫자 1을 얻지 못하는 것 같습니다. – heady12

+0

잘못된 것을 사용하고 있습니다 - 포함 된 파일 (또는 관련 비트)에 코드를 추가 할 수 있습니까? 당신을위한 예 –