2016-10-11 40 views
0

我想知道是否有人會知道爲什麼下面的代碼在最後返回數字1?有誰知道如何阻止這種情況發生?WordPress的短代碼返回數字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'); 

所以,我們使用的是從代碼包括,而不是直接返回不完整的價值。

+0

嗨, 包括只是一個文件,從產品頁面拉動畫廊圖像,因爲該網站是woocommerce。 – heady12

+0

無論如何編輯編碼,以便它不返回第一?我使用PHP之前包括在HTML內,並且我似乎沒有得到一個數字1. – heady12

+0

您正在使用包括錯誤 - 您可以將代碼添加到您包含的文件中(或相關位),並且我可以寫出一個你的例子 –