我有3个区域运输,每个区域还有3个方法运送(不同)
美国地区:方法运输= 1. Flate_rate1,2。Flate_rate2,3。Flate_rate3
英国地区:方法运输= 1. Flate_rate4,2。Flate_rate5,3。Flate_rate6
Zone All WOrld:Method Shipping = 1. Flate_rate7,2。Flate_rate8
现在,当选择带有ajax的结算国家/地区时,我希望按地区显示方法运费。
示例: 如果选择结算国家/地区,那么只显示/显示按区域运送的方法(1. Flate_rate1,2。Flate_rate2,3。Flate_rate3)
如何使用ajax,但没有刷新页面。
任何可以帮助我......谢谢...... 如有任何帮助,您可以通过电子邮件发送:andythreesaputra@gmail.com或回答此论坛。 非常感谢
答案 0 :(得分:0)
您可以使用WooCommerce过滤器'woocommerce_package_rates'来实现此目的。
您可以这样编码
add_filter('woocommerce_package_rates', 'wf_modify_rates', 10, 3);
function wf_modify_rates($available_shipping_methods, $package){
$methords_us = array('flaterate:1','flaterate:2');
if( $package['destination']['country'] == 'US'){
foreach ($available_shipping_methods as $methord_name => $methord) {
if(!in_array($methord_name, $methords_us)){
unset($available_shipping_methods[$methord_name]);
}
}
}
return $available_shipping_methods;
}