我搜索过从特定产品中删除“添加到购物车”按钮,我在functions.php中使用了此代码。
add_filter('woocommerce_is_purchasable', 'my_woocommerce_is_purchasable', 10, 2);
function my_woocommerce_is_purchasable($is_purchasable, $product) {
return ($product->id == 305 ? false : $is_purchasable);
}
现在我想替换直接下载链接而不是添加到购物车按钮。 我有免费的产品,我想要直接下载链接,而不是添加到购物车按钮。
EDITED: 我使用了这段代码,但是我看到了所有单一产品页面中的直接下载链接。我想在有免费产品的页面中看到直接下载链接。
add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_startsinfo', 11 );
function woocommerce_template_single_startsinfo() {
echo '<div class="starsinfo">
<p><a href="http://localhost/wordpress/wp-content/uploads/2017/05/Test.apk">direct download</a>
</div>';
}
答案 0 :(得分:0)
添加到购物车按钮实际上是一个HTML元素。您可以使用过滤器&#39; woocommerce_product_add_to_cart_url&#39;来更改此HTML元素的href。
add_filter( 'woocommerce_product_add_to_cart_url', function( $url, $product ) {
return $your_url;
}, 10, 2 );
当然,您应该使用$ product作为WC_Product的子类来确定$ your_url。