Ersetzen Sie für ein bestimmtes Land die Stadt durch den gewählten Zustandswert in der Woocommerce-Kasse

Lesezeit: 1 Minute

Benutzer-Avatar
Lê Nghĩa

In Woocommerce habe ich den Code für billing_state geschrieben, um die Versandkosten zu verwenden. Jetzt möchte ich den Wert von billing_state nach billing_city schreiben, wenn sich billing_state ändert, ändert sich auch billing_city

Dies sind meine benutzerdefinierten Statuscodes:

add_filter( 'woocommerce_states', 'vietnam_cities_woocommerce' );
function vietnam_cities_woocommerce( $states ) {
  $states['VN'] = array(
    'HCM' => __('Hồ Chí Minh', 'woocommerce') ,
    'HANOI' => __('Hà Nội', 'woocommerce') ,
    'HAIPHONG' => __('Hải Phòng', 'woocommerce') ,

  );

  return $states;
}

Jede Hilfe ist willkommen.

Der folgende Code füllt die Stadt aus dem Zustandswert auf, wenn das Land Vietnam (VN) auf der Checkout-Seite ist:

// Add checkout custom select fields
add_action( 'wp_footer', 'custom_checkout_city_field', 20, 1 );
function custom_checkout_city_field() {
    // Only checkout page
    if( is_checkout() && ! is_wc_endpoint_url() ):

    $country = 'VN'; //  <=== <=== The country code
    // $states   = WC()->countries->get_shipping_country_states()[$country];


    ?>
    <script type="text/javascript">
    jQuery(function($){
        var c="<?php echo $country; ?>",  f="form.checkout";

        // On billing state change
        $(f).on('change', '#billing_state', function(){
            if($('#billing_country').val() == c ){
                $('#billing_city').val($(this).val());
            }
        });

        // On shipping state change
        $(f).on('change', '#shipping_state', function(){
            if($('#shipping_country').val() == c ){
                $('#shipping_city').val($(this).val());
            }
        });
    });
    </script>
    <?php
    endif;
}

Der Code wird in die function.php-Datei Ihres aktiven untergeordneten Designs (aktives Design) eingefügt. Getestet und funktioniert.

  • Kann dieser Code für alle Seiten der Website funktionieren, stattdessen // Only checkout page ?

    – Verätzungen

    6. September 2021 um 20:40 Uhr

  • Rechnung und Versand

    – Ayoub Bousetta

    7. Dezember 2021 um 20:50 Uhr

1245570cookie-checkErsetzen Sie für ein bestimmtes Land die Stadt durch den gewählten Zustandswert in der Woocommerce-Kasse

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy