使用以下代碼到 Woocommerce 上的城市結(jié)帳字段:function change_city_to_dropdown( $fields ) { include('citynames.php'); $city_args = wp_parse_args( 'citydelivery' , array( 'type' => 'select', 'options' => array_combine( $cities, $cities), 'input_class' => array( 'wc-enhanced-select', ) ), $fields['shipping']['shipping_city'] ); $fields['shipping']['shipping_city'] = $city_args; $fields['billing']['billing_city'] = $city_args; wc_enqueue_js( " jQuery( ':input.wc-enhanced-select' ).filter( ':not(.enhanced)' ).each( function() { var select2_args = { minimumResultsForSearch: 5 }; jQuery( this ).select2( select2_args ).addClass( 'enhanced' ); });" ); return $fields;}add_filter( 'woocommerce_checkout_fields', 'change_city_to_dropdown' );這可以完美地完成工作,但我無法對其進行限制。例如,默認值為“選擇您的城市”,但有時客戶沒有選擇他們的城市并下訂單。我嘗試了以下代碼,但沒有奏效: add_action('woocommerce_checkout_process', 'checkout_field_city_restriction()'); function checkout_field_city_restriction() { global $woocommerce; // Check if set, if its not set add an error. if ($_POST[$city_args] == "Select your city") wc_add_notice( '<strong>Please select your city</strong>', 'error' ); }誰能告訴我我做錯了什么?此外,此文件 ('citynames.php') 具有以下代碼:<?php$cities = array('Select your city','Tall','Tando Jam','Topi','Pasni','Mastung','Kalat','Kamalia','Haroonabad','Ranipur', );?>
1 回答

小怪獸愛吃肉
TA貢獻1852條經(jīng)驗 獲得超1個贊
我已經(jīng)解決了我的問題。
這是必須做的以下事情:
add_action('woocommerce_checkout_process', 'checkout_field_city_restriction()');
function checkout_field_city_restriction {
global $woocommerce;
// Check if set, if its not set add an error.
if ($_POST[$billing_city] == "Select your city")
wc_add_notice( '<strong>Please select your city</strong>', 'error' );
}
- 1 回答
- 0 關(guān)注
- 93 瀏覽
添加回答
舉報
0/150
提交
取消