Wordpress Woocommerce-如何添加一个链接“;“添加到购物车”;到循环产品缩略图?

Wordpress Woocommerce-如何添加一个链接“;“添加到购物车”;到循环产品缩略图?,wordpress,woocommerce,Wordpress,Woocommerce,我尝试了几种方法,将代码添加到functions.php 我想我离这段代码最近的时间是: printf('<a class="button" href=" ..... "?>'); echo woocommerce_get_product_thumbnail(); printf('</a>'); } printf(“”); } 但我不知道该说些什么 之前,我通过以下方式删除了其他LIK: /

我尝试了几种方法,将代码添加到functions.php

我想我离这段代码最近的时间是:

   printf('<a class="button" href=" ..... "?>');
    echo woocommerce_get_product_thumbnail(); 
    printf('</a>');
    
}
printf(“”);
}
但我不知道该说些什么

  • 之前,我通过以下方式删除了其他LIK:
/*删除指向循环的链接,添加指向标题的链接*/
删除操作(“店铺前的woocommerce\u循环项目”,“woocommerce\u模板\u循环产品\u链接打开”,10);
删除操作(“店铺循环项目后的woocommerce”,“woocommerce模板循环产品链接关闭”,5);
添加操作(“woocommerce”在“商店”之前,在“商品”标题之前,在“woocommerce”模板之前,在“产品”链接之前,在“打开”,5);
添加操作(“woocommerce”在“商店”之前,在“商品”标题之前,在“woocommerce”模板之前,在“产品”链接之前,在“关闭”20);
函数\u模板\u循环\u产品\u标题(){
echo sprintf(“”,
获取\u permalink(),
获取标题()
);
}

非常感谢

为适应您的场景,可能需要对其进行一些修改

将以下代码添加到functions.php文件中

这将仅在您位于“产品”页面上时将链接添加到缩略图

function add_link_woocommerce_single_product_image_thumbnail_html( $html, $post_thumbnail_id ) {

    /**
     * This will only add the link on a single product page.
     */
    if ( is_product() ) :
        global $product;
        $product_id = $product->get_id();
        $product_url = get_permalink( $product_id );
        $main_image = true;
        $flexslider        = (bool) apply_filters( 'woocommerce_single_product_flexslider_enabled', get_theme_support( 'wc-product-gallery-slider' ) );
        $gallery_thumbnail = wc_get_image_size( 'gallery_thumbnail' );
        $thumbnail_size    = apply_filters( 'woocommerce_gallery_thumbnail_size', array( $gallery_thumbnail['width'], $gallery_thumbnail['height'] ) );
        $image_size        = apply_filters( 'woocommerce_gallery_image_size', $flexslider || $main_image ? 'woocommerce_single' : $thumbnail_size );
        $full_size         = apply_filters( 'woocommerce_gallery_full_size', apply_filters( 'woocommerce_product_thumbnails_large_size', 'full' ) );
        $thumbnail_src     = wp_get_attachment_image_src( $post_thumbnail_id, $thumbnail_size );
        $full_src          = wp_get_attachment_image_src( $post_thumbnail_id, $full_size );
        $alt_text          = trim( wp_strip_all_tags( get_post_meta( $post_thumbnail_id, '_wp_attachment_image_alt', true ) ) );
        $image             = wp_get_attachment_image(
            $post_thumbnail_id,
            $image_size,
            false,
            apply_filters(
                'woocommerce_gallery_image_html_attachment_image_params',
                array(
                    'title'                   => _wp_specialchars( get_post_field( 'post_title', $post_thumbnail_id ), ENT_QUOTES, 'UTF-8', true ),
                    'data-caption'            => _wp_specialchars( get_post_field( 'post_excerpt', $post_thumbnail_id ), ENT_QUOTES, 'UTF-8', true ),
                    'data-src'                => esc_url( $full_src[0] ),
                    'data-large_image'        => esc_url( $full_src[0] ),
                    'data-large_image_width'  => esc_attr( $full_src[1] ),
                    'data-large_image_height' => esc_attr( $full_src[2] ),
                    'class'                   => esc_attr( $main_image ? 'wp-post-image' : '' ),
                ),
                $post_thumbnail_id,
                $image_size,
                $main_image
            )
        );
        $html = '<div data-thumb="' . esc_url( $thumbnail_src[0] ) . '" data-thumb-alt="' . esc_attr( $alt_text ) . '" class="woocommerce-product-gallery__image"><a href="' . esc_url( $product_url ) . '/?add-to-cart=' . $product_id .  '">' . $image . '</a></div>';

        return $html;
    endif; 

    return $html;
}
add_filter( 'woocommerce_single_product_image_thumbnail_html', 'add_link_woocommerce_single_product_image_thumbnail_html', 10, 2 );
function add\u link\u woodcommerce\u single\u product\u image\u缩略图\u html($html,$post\u缩略图\u id){
/**
*这将仅在单个产品页面上添加链接。
*/
如果(is_product()):
全球$产品;
$product_id=$product->get_id();
$product\U url=get\u permalink($product\U id);
$main_image=true;
$flexslider=(bool)应用过滤器(“woocommerce”单一产品“flexslider”已启用”,获取主题支持(“wc产品库滑块”);
$gallery_thumbnail=wc_get_image_size('gallery_thumbnail');
$thumboil\u size=应用过滤器('woocommerce\u gallery\u thumboil\u size',数组($gallery\u thumboil['width'],$gallery\u thumboil['height']);
$image_size=apply_过滤器('woocommerce_gallery_image_size',$flexslider | |$main_图像?'woocommerce_single':$thumbnail_size);
$full_size=应用过滤器('woocommerce_gallery_full_size',应用过滤器('woocommerce_product_缩略图_large_size','full');
$thumbnail\u src=wp\u get\u attachment\u image\u src($post\u thumbnail\u id,$thumbnail\u size);
$full\u src=wp\u get\u attachment\u image\u src($post\u thumbnail\u id,$full\u size);
$alt_text=trim(wp_strip_all_标记(获取发布meta($post_缩略图_id,''wp_附件_图像_alt',true));
$image=wp\u获取\u附件\u图像(
$post\u缩略图\u id,
$image\u大小,
假,,
应用过滤器(
“woocommerce_gallery_image_html_attachment_image_params”,
排列(
“title”=>\u wp\u specialchars(获取帖子字段('post\u title',$post\u缩略图\u id),ENT\u引号,'UTF-8',true),
“数据标题”=>\u wp\u特殊字符(获取帖子字段('post\u摘录',$post\u缩略图\u id),ENT\u引号,'UTF-8',true),
'data src'=>esc_url($full_src[0]),
'data-large_image'=>esc_url($full_src[0]),
“数据大图像宽度”=>esc\u attr($full\u src[1]),
“数据大图像高度”=>esc属性($full\u src[2]),
'class'=>esc_attr($main_image?'wp post image':''),
),
$post\u缩略图\u id,
$image\u大小,
$main_图像
)
);
$html='';
返回$html;
endif;
返回$html;
}
添加过滤器('woocommerce\u single\u product\u image\u thumbnail\u html'、'add\u link\u woocommerce\u single\u product\u image\u thumbnail\u html',10,2);

您好,您是在问如何在产品的缩略图上放置“添加到购物车”链接吗?您好,鲁迪,没错。在缩略图上,有一个指向“添加到购物车”的链接。我有车作为外部产品,所以我希望它也在那里。
function add_link_woocommerce_single_product_image_thumbnail_html( $html, $post_thumbnail_id ) {

    /**
     * This will only add the link on a single product page.
     */
    if ( is_product() ) :
        global $product;
        $product_id = $product->get_id();
        $product_url = get_permalink( $product_id );
        $main_image = true;
        $flexslider        = (bool) apply_filters( 'woocommerce_single_product_flexslider_enabled', get_theme_support( 'wc-product-gallery-slider' ) );
        $gallery_thumbnail = wc_get_image_size( 'gallery_thumbnail' );
        $thumbnail_size    = apply_filters( 'woocommerce_gallery_thumbnail_size', array( $gallery_thumbnail['width'], $gallery_thumbnail['height'] ) );
        $image_size        = apply_filters( 'woocommerce_gallery_image_size', $flexslider || $main_image ? 'woocommerce_single' : $thumbnail_size );
        $full_size         = apply_filters( 'woocommerce_gallery_full_size', apply_filters( 'woocommerce_product_thumbnails_large_size', 'full' ) );
        $thumbnail_src     = wp_get_attachment_image_src( $post_thumbnail_id, $thumbnail_size );
        $full_src          = wp_get_attachment_image_src( $post_thumbnail_id, $full_size );
        $alt_text          = trim( wp_strip_all_tags( get_post_meta( $post_thumbnail_id, '_wp_attachment_image_alt', true ) ) );
        $image             = wp_get_attachment_image(
            $post_thumbnail_id,
            $image_size,
            false,
            apply_filters(
                'woocommerce_gallery_image_html_attachment_image_params',
                array(
                    'title'                   => _wp_specialchars( get_post_field( 'post_title', $post_thumbnail_id ), ENT_QUOTES, 'UTF-8', true ),
                    'data-caption'            => _wp_specialchars( get_post_field( 'post_excerpt', $post_thumbnail_id ), ENT_QUOTES, 'UTF-8', true ),
                    'data-src'                => esc_url( $full_src[0] ),
                    'data-large_image'        => esc_url( $full_src[0] ),
                    'data-large_image_width'  => esc_attr( $full_src[1] ),
                    'data-large_image_height' => esc_attr( $full_src[2] ),
                    'class'                   => esc_attr( $main_image ? 'wp-post-image' : '' ),
                ),
                $post_thumbnail_id,
                $image_size,
                $main_image
            )
        );
        $html = '<div data-thumb="' . esc_url( $thumbnail_src[0] ) . '" data-thumb-alt="' . esc_attr( $alt_text ) . '" class="woocommerce-product-gallery__image"><a href="' . esc_url( $product_url ) . '/?add-to-cart=' . $product_id .  '">' . $image . '</a></div>';

        return $html;
    endif; 

    return $html;
}
add_filter( 'woocommerce_single_product_image_thumbnail_html', 'add_link_woocommerce_single_product_image_thumbnail_html', 10, 2 );