Woocommerce运输区 - 没有地址时默认

时间:2017-02-15 20:20:09

标签: php wordpress woocommerce hook-woocommerce

我想知道是否有人对如何解决这个问题有任何想法。我有一个只有两个运输区的woocommerce商店:一个用于本地客户,一个用于区域外。基本上我在' local'中有一组邮政编码匹配。区。结帐时一切正常,并显示正确的区域。

但问题是,我的客户希望结帐总额上显示的送货费用显示为“本地'默认交货率。通常,当客户登陆结账时,他们不会填写运输详细信息,因此他们的区域默认为“世界其他地方”。 - 对我们来说这是一个统一的运费。这个比率让一些客户失望,他们只是没有意识到他们需要在他们的地址中查看当地的费率。我想知道是否有办法在这里简单地显示本地送货率,直到地址找到当地区域,任何想法都会受到高度赞赏。

我想过用javascript更改它。但问题是,当运费变化时,税/总额也会发生变化,我真的不想自己计算这些东西。我似乎无法找到任何钩子woocommerce暴露让我过滤运输区域。即使是一个让我输入虚拟邮政编码进行运输区域查找的钩子也很棒

提前感谢任何可以提供帮助的人。

1 个答案:

答案 0 :(得分:0)

您可以使用过滤器default_checkout_countrydefault_checkout_statedefault_checkout_postcode覆盖默认设置来实现此目的。

对于国家:

add_filter( 'default_checkout_country', 'change_default_checkout_country' , 10, 2);
function change_default_checkout_country($country, $status) {
  return 'US'; 
}