wordpress 我想通过单击“添加到购物车”页面中的自定义按钮来添加折扣,如何操作?

wkyowqbh  于 2022-12-03  发布在  WordPress
关注(0)|答案(1)|浏览(163)
function add_content(){
     
        if(isset($_POST['takeway'])) {
            // Call Recalculate function
            add_action( 'woocommerce_after_calculate_totals', 'woocommerce_after_calculate_totals', 30 );
        } 
    ?> 
    <form method="post"> 
        <input type="submit" name="takeway" value="Takeway"/> 
    </form>

<?php

}
add_action('woocommerce_cart_coupon', 'add_content');


// Recalculate Function       
function woocommerce_after_calculate_totals( $cart ) {

    global $woocommerce;
    $subtotal = $woocommerce->cart->get_subtotal();
    $discount = 40/100;
    $cart->total = $subtotal*$discount;

}

购物车-〉get_小计();美元折扣= 40/100;$cart-〉合计= $小计 *$折扣;我想通过点击woocommerce购物车页面中HTML按钮来添加discont。但是使用按钮它不工作,没有按钮它工作正常。

1u4esq0p

1u4esq0p1#

请尝试以下代码这将帮助您完成下一步流程
工作代码示例:

function add_content(){  
    ?> 
    <form method="post"> 
        <input type="submit" name="takeway" value="Takeway"/> 
    </form>

<?php

}
add_action('woocommerce_cart_coupon', 'add_content');

add_action( 'woocommerce_cart_calculate_fees', 'elex_discount_price' ); 

function elex_discount_price($cart) 
{ 
global $woocommerce; //Set the price for user role. 

if(isset($_POST['takeway'])) {
$discount_price = $woocommerce->cart->subtotal * 40 / 100;  

$woocommerce->cart->add_fee( 'Discounted Price', -$discount_price, true, 'standard' ); 
}
}

有关更多详细信息,请参阅以下链接:http://thewebfosters.com/adding-custom-data-woocommerce-order-add-cart/

相关问题