在WooCommerce中获取特定城市的送货区域

时间:2018-10-14 22:55:20

标签: php wordpress woocommerce geolocation

我需要根据用户所在的城市自动选择运输区域。

要确定城市,我使用插件“ GeoIp Detection”。我使用短代码[geoip_detect2 property =“ city”]在页面的标题中显示用户所在的城市。

还是最好不要使用此插件,而是朝着此代码的方向看? Get user geolocated country name in Woocommerce 3

我创建了两个快递区域:

第1区-商店所在的单独城市。运费25美元。

第2区-快递员可以在该国其他地区运送产品的区域。运费$ 50。​​

如果用户居住在商店所在的城市,则显示Zone1。如果用户居住在另一个城市,则显示Zone2。

很遗憾,我找不到有助于解决此问题的代码((

我真的需要帮助。预先谢谢你!

1 个答案:

答案 0 :(得分:0)

您应该可以使用以下功能设置默认城市值:

add_filter( 'woocommerce_checkout_fields' , 'default_values_checkout_fields' );
function default_values_checkout_fields( $fields ) {
    $fields['billing']['billing_city']['default'] = 'default-city';
    $fields['shipping']['shipping_city']['default'] = 'default-city';
    return $fields;
}

现在您需要完成的是:

  • 获取用户所在城市的值
  • 将城市值传递为default-city

希望它会帮助您进步。