2016-12-14 106 views
3

我正在編寫一個自定義WordPress功能,當客戶從選擇菜單中更改「狀態」字段時,將更改flat_rate運輸。目前我正在做我的主題的功能.php如何在鉤子中訪問WooCommerce自定義結算字段

我已經創建了一個自定義字段來表示「狀態」字段作爲結算字段中的下拉菜單。我使用「WooCommerce Checkout Manager」插件來設置自定義字段並禁用默認的「狀態」字段。

現在我想根據自定義「狀態」字段的值更改運費。我無法檢索該字段的數據。另外,我想知道一旦該字段的值發生變化,我可以使用哪種掛鉤來更改統一費率發貨。

我已經使用這個過濾器鉤子(woocommerce_package_rates),它不起作用。

這裏是我的代碼來做到這一點,我得到了它從另一個教程然後做我的定製

function wc_ninja_change_flat_rates_cost($rates, $package) { 
$destination = $package['destination']; 
$city = $destination['myfield12']; // getting the city field value 

// Make sure flat rate is available 

if (isset($rates['flat_rate'])) { 

    if ($city == 'Alex' || $city == 'الإسكندرية') { 
     // Set flat rate to cost $10 more 
     $rates['flat_rate']->cost = 30; 
    } 
    else { 
     $rates['flat_rate']->cost = 20; 
    } 
} 

return $rates; 
} 
add_filter('woocommerce_package_rates', 'wc_ninja_change_flat_rates_cost', 10, 2); 
+0

希望這會幫助你http://stackoverflow.com/questions/31315357/updating-woocommerce-shipping-method-via-ajax –

回答

相關問題