将Woocommerce Products直接链接到外部网站(跳过详细信息页面)

时间:2013-11-30 18:57:32

标签: php wordpress woocommerce external-links

WP:3.71 主题:木星(artbees)v.3.02 网址:http://thefastlearners.com/store/

大家好, 我有一些外部链接到亚马逊或其他网站的Woocommerce产品。

我的目标是直接从商店页面将这些产品链接到他们的外部页面,而不包含详细信息页面!

已经尝试了可见性选项扩展,它没有改变任何东西。

这是原始内容-product.php摘录:     `     

$ mk_add_to_cart ='id))。'“class =”add_to_cart_button“>'。apply_filters('out_of_stock_add_to_cart_text',('READ MORE','woocommerce'))。'';     $ out_of_stock_badge =''。('OUT OF STOCK','woocommerce')。''; } 别的{?>

switch ( $product->product_type ) {
case "external" :
    $link  = apply_filters( 'external_add_to_cart_url', get_permalink( $product->id ) );
    $label  = apply_filters( 'external_add_to_cart_text', __( 'Read More', 'woocommerce' ) );
    $icon_class = 'mk-moon-search-3';
    break;
default :
    $link  = apply_filters( 'add_to_cart_url', esc_url( $product->add_to_cart_url() ) );
    $label  = apply_filters( 'add_to_cart_text', __( 'ADD TO CART', 'woocommerce' ) );
    $icon_class = 'mk-moon-cart-plus';
    break;
}

if ( $product->product_type != 'external' ) {
    $mk_add_to_cart = &#039;<a href="&#039;. $link .&#039;" rel="nofollow" data-product_id="&#039;.$product->id.&#039;" class="add_to_cart_button product_type_&#039;.$product->product_type.&#039;"><i class="&#039;.$icon_class.&#039;"></i>&#039;. $label.&#039;</a>&#039;;
}
else {
    $mk_add_to_cart = &#039;&#039;;
}

}`

我改为

´<?php
$mk_add_to_cart = &#039**;<a href="<?php echo esc_url( $product_url )**; ?>" rel="nofollow" class="single_add_to_cart_button shop-flat-btn shop-skin-btn alt"></a>&#039;;
$out_of_stock_badge = &#039;<span class="mk-out-stock">&#039;.__( &#039;OUT OF STOCK&#039;, &#039;woocommerce&#039; ).&#039;</span>&#039;;

} 别的{?&gt;

switch ( $product->product_type ) {
case "external" :
    $link     = apply_filters( &#039;external_add_to_cart_url&#039;, esc_url( $product_url ) );
    $label     = apply_filters( &#039;external_add_to_cart_text&#039;, __(&#039;Read More&#039;, &#039;woocommerce&#039;) );
    $icon_class = &#039;mk-moon-search-3&#039;;
    break;
default :
    $link  = apply_filters( &#039;add_to_cart_url&#039;, esc_url( $product_url ) );
    $label  = apply_filters( &#039;add_to_cart_text&#039;, __( &#039;ADD TO CART&#039;, &#039;woocommerce&#039; ) );
    $icon_class = &#039;mk-moon-cart-plus&#039;;
    break;
}

if ( $product->product_type != &#039;external&#039; ) {
    $mk_add_to_cart = &#039;<a href="&#039;. $link .&#039;" rel="nofollow" data-product_id="&#039;.$product->id.&#039;" class="add_to_cart_button product_type_&#039;.$product->product_type.&#039;"><i class="&#039;.$icon_class.&#039;"></i>&#039;. $label.&#039;</a>&#039;;
}
else {
    $mk_add_to_cart = &#039;&#039;;
}`

没有任何结果,除了我没有任何按钮添加任何内容。

来自external.php模板的

我已经发现命令应该是这样的 <?php echo esc_url( $product_url ); ?>

但是我没有把它放到/链接的地方。

如果你能在这里帮助我,那会很棒。一旦我开始工作,我就可以自己更改标题和图像的链接。

谢谢, 马提斯

1 个答案:

答案 0 :(得分:1)

您应该尝试$product->product_url而不是普通$product_url

这在content-product.php页面上对我有用。