【发布时间】:2017-08-14 05:56:52
【问题描述】:
我想从结帐页面将折扣券应用于购物车中的特定产品。
购物车内:
product1 带升级
product2 无升级
当我申请折扣券时,我希望折扣仅在产品 2 的价格中生效。我尝试在一些论坛中搜索,但优惠券将在整个购物车项目中生效。
【问题讨论】:
标签: woocommerce
我想从结帐页面将折扣券应用于购物车中的特定产品。
购物车内:
product1 带升级
product2 无升级
当我申请折扣券时,我希望折扣仅在产品 2 的价格中生效。我尝试在一些论坛中搜索,但优惠券将在整个购物车项目中生效。
【问题讨论】:
标签: woocommerce
你可以试试这段代码:
function calculate_variation_addon_price( $cart_object ) {
global $isProcessed;
// Loop for all products in cart
foreach ( $cart_object->cart_contents as $key => $value ) {
// Your condition here for product specific i.e. id == 25
if((!isset($isProcessed) || empty($isProcessed))) {
$orgPrice = floatval( $value['data']->get_price() );
$cart_object->cart_contents[$key]['data']->set_price( $orgPrice * 0.5 );
}
}
$isProcessed = 1;
}
add_action( 'woocommerce_before_calculate_totals', 'calculate_variation_addon_price', 2, 1 );
【讨论】:
从管理面板添加优惠券时,在此处找到一个名为“使用限制”的选项卡。
您可以在此处添加产品或产品类别,甚至排除一些以应用优惠券代码。
【讨论】: