首页 > 解决方案 > 基于数量的 Woocommerce 变化价格产品总数

问题描述

我正在尝试根据数量在产品页面上添加总价。在有变体的产品页面上添加总价的最佳方法是什么?

在简单的产品页面上,此代码有效。但它不适用于变体:

add_filter( 'woocommerce_available_variation', 'my_variation', 10, 3);
function my_variation( $data, $product, $variation ) {
    
    $data['price_html'] = '<div id="subtot" style="display:inline-block;">Total:<span></span></div>';
    
   $price = $variation->get_price();

   $currency = get_woocommerce_currency_symbol();
   wc_enqueue_js( "      
 
    
      $('[name=quantity]').on('input change', function() { 
         var qty = $(this).val();
                
        
         var price = '" . esc_js( $price ) . "';
         
            if (!(qty < 1)) {
            
                        if (qty < 4){
                            var price_string = price * qty;
                        }
                        if (qty >= 4){
                            var price_string = price * qty * 0.95;      
                        }
                        if(qty > 9){
                            var price_string = price * qty * 0.90;          
                        }
                    }
                    

         $('#subtot > span').html('" . esc_js( $currency ) . "'+price_string);
      }).change();
   " );
 
    return $data;
}

https://gyazo.com/acecac1589c5932039549fb5846502b5

变化价格显示和变化,所以也许我可以使用 javascript 来获取这些数据

标签: javascriptphpwordpresswoocommerce

解决方案


推荐阅读