第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 WooCommerce 結(jié)帳中的訂單總數(shù)之前添加交付單選按鈕

在 WooCommerce 結(jié)帳中的訂單總數(shù)之前添加交付單選按鈕

PHP
HUWWW 2023-06-18 18:01:30
我正在編寫(xiě)一個(gè) WordPress 插件,我需要在 WooCommerce 訂單審查部分的訂單總數(shù)之前添加兩個(gè)單選按鈕。我想出了如何將自定義單選按鈕添加到訂單審查部分,但我不知道如何在訂單總計(jì)之前移動(dòng)交付選項(xiàng)。請(qǐng)查看屏幕截圖以了解我想要實(shí)現(xiàn)的目標(biāo)。這是我的代碼:// Part 1 - Display Radio Buttonsadd_action( 'woocommerce_review_order_before_payment', 'custom_checkout_radio_choice' );function custom_checkout_radio_choice() {        $chosen = WC()->session->get( 'radio_chosen' );   $chosen = empty( $chosen ) ? WC()->checkout->get_value( 'radio_choice' ) : $chosen;   $chosen = empty( $chosen ) ? '0' : $chosen;           $args = array(       'type' => 'radio',       'class' => array( 'form-row-wide', 'update_totals_on_change' ),        'options' => array(            '2.95' => '60 MINUTES: €2.95',            '0' => '24 - 48 HOURS',        ),        'default' => $chosen   );        echo '<div id="checkout-radio">';   echo '<h3>Delivery Options</h3>';   woocommerce_form_field( 'radio_choice', $args, $chosen );   echo '</div>'; }  // Part 2 - Add Fee and Calculate Totaladd_action( 'woocommerce_cart_calculate_fees', 'custom_checkout_radio_choice_fee', 20, 1 );function custom_checkout_radio_choice_fee( $cart ) {    if ( is_admin() && ! defined( 'DOING_AJAX' ) )         return;        $radio = WC()->session->get( 'radio_chosen' );    if ( $radio ) {        $cart->add_fee( 'Delivery Fee', $radio );    }}  // Part 3 - Add Radio Choice to Sessionadd_action( 'woocommerce_checkout_update_order_review', 'custom_checkout_radio_choice_set_session' );function custom_checkout_radio_choice_set_session( $posted_data ) {    parse_str( $posted_data, $output );    if ( isset( $output['radio_choice'] ) ){        WC()->session->set( 'radio_chosen', $output['radio_choice'] );    }}這個(gè)你能幫我嗎。
查看完整描述

1 回答

?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊

要在訂單總計(jì)之前移動(dòng)單選按鈕,您需要使用另一個(gè)掛鉤。但是你不能在費(fèi)用總計(jì)行上有那個(gè)交付單選按鈕......


我已經(jīng)簡(jiǎn)化并重新訪問(wèn)了代碼:


add_action( 'woocommerce_review_order_before_order_total', 'checkout_delivery_radio_buttons' );

function checkout_delivery_radio_buttons() {

    echo '<tr class="delivery-radio">

            <th>'.__("Delivery Options").'</th><td>';


    $chosen = WC()->session->get( 'delivery' );

    $chosen = empty( $chosen ) ? WC()->checkout->get_value( 'delivery' ) : $chosen;

    $chosen = empty( $chosen ) ? '0' : $chosen;


    woocommerce_form_field( 'delivery',  array(

        'type'      => 'radio',

        'class'     => array( 'form-row-wide', 'update_totals_on_change' ),

        'options'   => array(

            '2.95'  => '60 MINUTES: €2.95',

            '0'     => '24 - 48 HOURS',

        ),

    ), $chosen );

    

    echo '</td></tr>';

}


add_action( 'woocommerce_cart_calculate_fees', 'checkout_delivery_fee', 20, 1 );

function checkout_delivery_fee( $cart ) {

    if ( $radio = WC()->session->get( 'delivery' ) ) {

        $cart->add_fee( 'Delivery Fee', $radio );

    }

}


add_action( 'woocommerce_checkout_update_order_review', 'checkout_delivery_choice_to_session' );


function checkout_delivery_choice_to_session( $posted_data ) {

    parse_str( $posted_data, $output );

    if ( isset( $output['delivery'] ) ){

        WC()->session->set( 'delivery', $output['delivery'] );

    }

}

代碼進(jìn)入您的活動(dòng)子主題(或活動(dòng)主題)的 functions.php 文件。測(cè)試和工作。


查看完整回答
反對(duì) 回復(fù) 2023-06-18
  • 1 回答
  • 0 關(guān)注
  • 228 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)