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

Woocommerce,当用户在结帐时选择一个选项时添加费用,woocommerce,hook-woocommerce,Woocommerce,Hook Woocommerce,我有一个支付网关(银行),它有一个分期付款的选择选项 当用户选择一个选项时,它应该用一笔费用更新结帐总额(购物车总额*0.12*分期付款/12) Επιλογή Δόσεων * 123456789101112 为了增加费用(通常),LoicTheAztec的答案是有效的。 但为了获得分期付款的价值(“piraeusbank_gateway-card-doseis”) 您需要添加代码(据我所知,我正在尝试$\u POST['piraeusbank\u gateway-card-doseis'

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

Επιλογή Δόσεων * 123456789101112

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

您需要添加代码(据我所知,我正在尝试$\u POST['piraeusbank\u gateway-card-doseis'],这是错误的) 在theme的function.php中

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'])) {
...

请查看,但当用户更改时,我如何获得#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'])) {
...