我建立一個基於WooCommerce店。我有郵政編碼列表,每一個都有通過航運區連接不同的運輸成本(有的提供免費送貨,一些有固定費率)。定製結賬郵編場到自定義下拉菜單
當顧客進入到結賬頁面,他需要在輸入框中輸入他的郵編號碼。根據郵政編碼,訂單預覽會顯示不同的運費總額(免費或統一費率)。
這裏的輸入字段看起來像在class-wc-countries.php
:
public function get_default_address_fields() {
$fields = array(
'postcode' => array(
'label' => __('Postcode/ZIP', 'woocommerce'),
'required' => true,
'class' => array('form-row-first', 'address-field'),
'clear' => true,
'validate' => array('postcode'),
'autocomplete' => 'postal-code',
),
);
但是,我想要做的就是把這個領域變成一個下拉菜單,讓用戶可以只選擇他的郵編選項而不是鍵入它。
我設法使它下拉,但每當我選擇任何選項,它似乎並沒有改變總的出貨,因爲它會與輸入字段。
這裏就是我所做的:
public function get_default_address_fields() {
$fields = array(
'postcode' => array(
'label' => __('Postcode/ZIP', 'woocommerce'),
'required' => true,
'class' => array('form-row-first', 'address-field'),
'clear' => true,
'validate' => array('postcode'),
'autocomplete' => 'postal-code',
'type' => 'select',
'options' => array(
'opt1' => "001122", "112200", "334400")
),
);
但這不工作。
我錯過了什麼嗎?
如何讓這些下拉選項改變航運總?
感謝
最後通過使用States字段作爲下拉菜單來解決它。我把我的zipcode放在woocommerce functions.php中,好像它們是狀態一樣(從他們網站上的Add/Modify States頁面獲取代碼)。然後我創建了新的運輸區域:我的國家 - 州(郵政編碼),並給他們統一費率/免運費選項。比編寫一個全新的下拉菜單要容易得多(正如Loic所說 - 這是一個複雜的開發) – rb1989