2016-12-14 108 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 –

回答

相关问题