Woocommerce,当用户在结帐时选择一个选项时添加费用

问题描述 投票:0回答:1

我有一个支付网关(银行),它有一个选择分期付款当用户选择一个选项时,它应该更新结账总额的费用(购物车总数* 0.12 *分期付款/ 12)

<p class="form-row woocommerce-validated">
        <label for="piraeusbank_gateway-card-doseis">Επιλογή Δόσεων <span class="required">*</span></label>
                    <select id="piraeusbank_gateway-card-doseis" name="piraeusbank_gateway-card-doseis" class="input-select wc-credit-card-form-card-doseis">
                    <option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option></select>         
    </p>
woocommerce hook-woocommerce
1个回答
0
投票

为了增加费用(一般)LoicTheAztec的答案是有效的。但为了获得分期付款的价值(“piraeusbank_gateway-card-doseis”)

你需要在主题的function.php中添加代码(通过我的unknowledge,我在尝试$ _POST ['piraeusbank_gateway-card-doseis']这是错误的)

add_action( 'woocommerce_cart_calculate_fees', 'custom_paypal_additional_fee', 20, 1 );
function custom_paypal_additional_fee( $cart ) {
            if ( isset($_POST['post_data'])) {
                parse_str( $_POST['post_data'], $post_data );
            } else {
                 $post_data = $_POST; // fallback for final checkout (non-ajax)
            }
            if (isset($post_data['piraeusbank_gateway-card-doseis'])) {
...
© www.soinside.com 2019 - 2024. All rights reserved.