woocommerce - 动态更改存储位置
问题描述
为了在结帐期间按位置获得准确的税值,我想将我的商店位置动态更改为客户账单地址。有钩子吗?提前致谢
解决方案
您可以使用商店位置的过滤器来修改输出:
- 基地址第一行:
woocommerce_countries_base_address
- 基地址第二行:
woocommerce_countries_base_address_2
- 基准国:
woocommerce_countries_base_country
- 基础状态:
woocommerce_countries_base_state
- 基地城市:
woocommerce_countries_base_city
- 基本邮政编码:
woocommerce_countries_base_postcode
用法:
function custom_base_address( $base_address ){
//your custom code to change base_address first line
return $base_address
}
add_filter('woocommerce_countries_base_address', 'custom_base_address', 10, 1)
function custom_base_city( $base_address ){
//your custom code to change base state
return $base_address
}
add_filter('woocommerce_countries_base_state', 'custom_base_state', 10, 1)
对于客户帐单地址,您可以从用户元数据中获取。例如:
$address_1 = get_user_meta( $current_user->ID, 'billing_address_1', true );
$address_2 = get_user_meta( $current_user->ID, 'billing_address_2', true );
$city = get_user_meta( $current_user->ID, 'billing_city', true );
$postcode = get_user_meta( $current_user->ID, 'billing_postcode', true );
您可以在 custom_base_address 函数内的 IF 条件中使用这些变量,并获得所需的自定义基地址
推荐阅读
- html - 如何在将页面大小调整为固定大小或按比例拉伸时制作(图像填充的)div?
- json - 是否应该对 JSON 正文进行编码
- javascript - 选中子复选框时向父组件发送 id 值
- html - 使用 Dash 组件嵌入 D3 + HTML
- c# - Devexpress - 如何自动更改 DataGridView 内的按钮
- python - 使用 Python 从 Student Doctor Network (SDN) 收集面试问题
- sql - 按所有活动分组到同一行
- ruby-on-rails - Docker、Rails 和 Sidekiq - 捆绑器:找不到命令:sidekiq - 将 sidekiq 作为单独的容器运行
- azure - 如何为包含卷的 Azure 容器注册表部署简单的多容器应用程序?
- scala - 为什么 Source.fromInputStream 使用 GZIPInputStream 而不是 ZipInputStream