2016-10-11 66 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

您正在使用包括错误 - 您可以将代码添加到您包含的文件中(或相关位),并且我可以写出一个你的例子 –