为了账号安全,请及时绑定邮箱和手机立即绑定

Woocommerce 优惠券管理

Woocommerce 优惠券管理

跃然一笑 2023-09-21 14:22:36
有谁知道我怎样才能制作这样的优惠券或者以前做过吗?我想制作基于百分比的折扣优惠券。您可以将优惠券添加到打折产品中,但它应该使用该产品的全价并从那里计算,而不是像双重折扣(打折产品 + 基于百分比的折扣(带优惠券))有什么想法,怎么办?
查看完整描述

1 回答

?
开满天机

TA贡献1786条经验 获得超12个赞

是的,可以将此代码添加到您的functions.php 文件中。在下面的代码中,“五十”是所使用的优惠券的名称。在 woo commerce 中创建基于 % 的优惠券。


add_filter('woocommerce_coupon_get_discount_amount', 'woocommerce_discount_from_the_original_price', 10, 5 );


function woocommerce_discount_from_the_original_price( $discount, $discounting_amount, $cart_item, $single, $coupon ) {


  if ($coupon->discount_type == 'percent' && $coupon->code == 'fifty') {


    $discount_percentage = $coupon->amount / 100;

    $item                = wc_get_product($cart_item['product_id']);


    if ($item) {

      if ( $item->is_type( 'simple' ) ) {

        $sale_price    = $item->sale_price;

        $regular_price = $item->regular_price;

        if ( ($sale_price && $regular_price) && ($sale_price !==  $regular_price) ) {

          $discount_from_regular_price = $regular_price * $discount_percentage; 

          $discount = $discounting_amount - ($discount_from_regular_price * $cart_item['quantity']); 

        }


      } elseif ( $item->is_type( 'variable' ) ) {

        $variable_product = new WC_Product_Variation( $cart_item["variation_id"] );

        $sale_price    = $variable_product->sale_price;

        $regular_price = $variable_product->regular_price;

        

        if ( ($sale_price && $regular_price) && ($sale_price !==  $regular_price) ) {

          $discount_from_regular_price = $regular_price * $discount_percentage;

          $discount = $discounting_amount - ($discount_from_regular_price * $cart_item['quantity']);

        }


      }

    }


  }

  return $discount;

}


查看完整回答
反对 回复 2023-09-21
  • 1 回答
  • 0 关注
  • 40 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信