我正在编写一个自定义WordPress功能,当客户更改"状态"选择菜单中的字段。目前我正在使用我的主题函数.php
我创建了一个自定义字段来表示" State"字段作为结算字段中的下拉菜单。我用了#34; 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 :(得分:-1)
我发现了这个:
基本上它通过JS捕获字段数据并向服务器发送Ajax请求,然后服务器将值存储在会话中。然后再增加一笔费用。这不是我想要做的,而是一个功能性的解决方法。