如何針對特定產品隱藏 WooCommerce 的優惠券欄位?
P粉138871485
2023-07-28 11:22:20
<p>我正在嘗試在WooCommerce購物車和結帳頁面中隱藏某些產品的優惠券欄位。在谷歌上搜尋後,我找到了一些代碼可以隱藏優惠券字段,但只適用於一個產品。 </p><p>我該如何在這段程式碼中處理多個產品:</p><p><br /></p>
<pre class="brush:php;toolbar:false;">// hide coupon field on the checkout page
function disable_coupon_field_on_checkout( $enabled ) {
if ( is_checkout() ) {
$product_id = 240790;
$in_cart = false;
foreach( WC()->cart->get_cart() as $cart_item ) {
$product_in_cart = $cart_item['product_id'];
if ( $product_in_cart === $product_id ) $in_cart = true;
}
if ( $in_cart === true )
{
$enabled = false;
}
}
return $enabled;
}
add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_on_checkout' );
// hide coupon field on the cart page
function disable_coupon_field_on_cart( $enabled ) {
if ( is_cart() ) {
$product_id = 240790;
$in_cart = false;
foreach( WC()->cart->get_cart() as $cart_item ) {
$product_in_cart = $cart_item['product_id'];
if ( $product_in_cart === $product_id ) $in_cart = true;
}
if ( $in_cart === true )
{
$enabled = false;
}
}
return $enabled;
}
add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_on_cart' );</pre>
下面的程式碼將處理多個產品ID和/或變體ID,用於購物車和結帳頁面,停用這些產品的優惠券欄位。
應該有用