【问题标题】:Woocommerce Grouped Product ImagesWoocommerce 分组产品图片
【发布时间】:2013-07-05 15:53:33
【问题描述】:

我正在尝试在分组产品的名称和价格旁边添加产品缩略图。目前,一个父产品包含20个左右的子(分组)产品,默认页面仅在列表底部显示数量选择器、产品名称、价格和添加到购物车按钮。所有产品都列在一张大表中,一个接一个,我想为每个单独的产品添加一个单独的产品图片。

目前,通过编辑 /single-product/add-to-cart/grouped.php 产品文件,我设法通过在产品标题php后的DIV:

<div class="images">

<?php if ( has_post_thumbnail( $post_id ) ) { ?>

<a itemprop="image" href="<?php echo wp_get_attachment_url( get_post_thumbnail_id( $post_id ) ); ?>" class="zoom" rel="thumbnails" title="<?php echo get_the_title( get_post_thumbnail_id( $post_id ) ); ?>"><?php echo get_the_post_thumbnail( $post_id, apply_filters( 'grouped_product_large_thumbnail_size', 'shop_thumbnail' ), array( 
'title' => get_the_title( get_post_thumbnail_id( $post_id ) ), 
) ); ?></a>

<?php } ?>

</div>

我知道此代码仅从捆绑的产品图片中复制而来,但它是我所拥有的最接近的。你可以在这里看到我的意思的例子:

http://hallmark.digitalstorm.co.uk/product/luxor-custom-built-arrangement/

任何帮助将不胜感激,因为我知道我必须非常接近。

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    这是您要查找的代码:

    add_action( 'woocommerce_grouped_product_list_before_price', 'woocommerce_grouped_product_thumbnail' );
    
    function woocommerce_grouped_product_thumbnail( $product ) {
        $image_size = array( 20, 20 );  // array( width, height ) image size in pixel 
        $attachment_id = get_post_meta( $product->id, '_thumbnail_id', true );
        ?>
        <td class="label">
            <?php echo wp_get_attachment_image( $attachment_id, $image_size ); ?>
        </td>
        <?php
    }
    

    希望这会有用。

    【讨论】:

    • 您是否知道将可变产品纳入组的解决方法?有什么插件吗?
    【解决方案2】:

    @Ratnakar 的精彩代码 - 商店应用

    对于那些尝试将产品链接添加到图像的人 我在图像中添加了“链接”包装,因此它会产生图像 + 链接到产品

    $link = get_the_permalink($product->id);
    

    <a href="<?php echo $link; ?>" > <?php echo wp_get_attachment_image( $attachment_id, $image_size ); ?> </a>
    

    决赛:

    add_action( 'woocommerce_grouped_product_list_before_price', 'woocommerce_grouped_product_thumbnail' );
    
    function woocommerce_grouped_product_thumbnail( $product ) {
        $image_size = array( 100, 100 );  // array( width, height ) image size in pixel 
        $attachment_id = get_post_meta( $product->id, '_thumbnail_id', true );
        $link = get_the_permalink($product->id);
        ?>
        <td class="label">
            <a href="<?php echo $link; ?>" > <?php echo wp_get_attachment_image( $attachment_id, $image_size ); ?> </a>
        </td>
        <?php
    }
    

    【讨论】:

      【解决方案3】:

      对于 Woocommerce 2.6 及更高版本(更新 $product 以使用数据存储):

      add_action( 'woocommerce_grouped_product_list_before_price','woocommerce_grouped_product_thumbnail');
      
      function woocommerce_grouped_product_thumbnail( $product ) {
      $image_size = array( 100, 100 );  // array( width, height ) image size in pixel
      $attachment_id = get_post_meta( $product->get_id(), '_thumbnail_id', true );
      $link = get_the_permalink($product->get_id());
      ?>
      <td class="label">
          <a href="<?php echo $link; ?>" > <?php echo 
      wp_get_attachment_image($attachment_id, $image_size ); ?> </a>
      </td>
      <?php
      }
      

      【讨论】:

        猜你喜欢
        • 2012-08-10
        • 2016-09-10
        • 2016-03-14
        • 1970-01-01
        • 1970-01-01
        • 2018-11-17
        • 1970-01-01
        • 2022-06-22
        • 2018-01-30
        相关资源
        最近更新 更多