我创建了一个带有woocommerce和Flatsome主题的会员网站!
原则上,我希望当用户单击产品标题或缩略图中的图像时,他没有重定向到详细的产品表,而是重定向到“外部产品/从属关系”中的会员链接的网址>产品网址。
我在stackoverflow.com上找到了执行所需操作的代码:
Woocommerce - External/Affiliate Product Image and title to External Link (New tab)
我将代码集成到了功能文件中:
remove_action('woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open');
add_action('woocommerce_before_shop_loop_item_title', 'woocommerce_template_loop_product_link_open', 15);
add_action('woocommerce_before_shop_loop_item', 'woocommerce_add_aff_link_open', 10);
add_action('woocommerce_before_shop_loop_item_title', 'woocommerce_add_aff_link_close', 10);
function woocommerce_add_aff_link_open(){
$product = wc_get_product(get_the_ID());
if( $product->is_type( 'external' ) ) {
echo '<a target="_blank" href="' . $product->get_product_url() . '" class="">';
}
}
function woocommerce_add_aff_link_close(){
$product = wc_get_product(get_the_ID());
if( $product->is_type( 'external' ) ) {
echo '</a>';
}
}
function woocommerce_template_loop_product_link_open() {
global $product;
if( $product->is_type( 'external' ) ) {
$link = apply_filters( 'woocommerce_loop_product_link', $product->get_product_url(), $product );
echo '<a target="_blank" href="' . esc_url( $link ) . '" class="woocommerce-LoopProduct-link woocommerce-loop-product__link">';
} else {
$link = apply_filters( 'woocommerce_loop_product_link', get_the_permalink(), $product );
echo '<a href="' . esc_url( $link ) . '" class="woocommerce-LoopProduct-link woocommerce-loop-product__link">';
}
}
除了链接出现在代码中但不在正确的位置,而不是标题和图像周围!
这是指向我的网站的链接:
https://www.thefreakyshop.com/boutique/
使用代码检查器监视第一个产品:All Star Canvas Hi Converse。 我使用链接google.fr作为会员链接进行了测试,我们可以看到该链接:
<a target="_blank" href="https://www.google.com/" class=""> </a>
但是不在正确的位置,缩略图和图像的URL标题没有消失!
您是否有问题的根源? 我不是编码器,谢谢您的帮助!