WooCommerce:在结帐页面中默认设置国家/地区

Son*_*han 5 php country wordpress checkout woocommerce

我在我的 Wordpress 网站中使用WooCommerce。默认情况下,结帐页面上会填充客户的帐单和运输详细信息。我希望默认情况下不会设置国家/地区。相反,即使用户已登录,它也会要求选择国家/地区。

截图链接

有什么建议?我应该怎么做才能实现这一目标?

Loi*_*tec 6

更新 (自 WooCommerce 3 起)

这是用于国家/地区(以及可选的州)的 woocommerce 挂钩和代码:

add_filter( 'default_checkout_billing_country', 'change_default_checkout_country_and_state' );
add_filter( 'default_checkout_shipping_country', 'change_default_checkout_country_and_state' );
add_filter( 'default_checkout_billing_state', 'change_default_checkout_country_and_state' );
add_filter( 'default_checkout_shipping_state', 'change_default_checkout_country_and_state' );
function change_default_checkout_country_and_state( $default ) {
    return null;
}
Run Code Online (Sandbox Code Playgroud)

或者甚至更短:

add_filter( 'default_checkout_billing_country', '__return_null' );
add_filter( 'default_checkout_shipping_country', '__return_null' );
add_filter( 'default_checkout_billing_state', '__return_null' );
add_filter( 'default_checkout_shipping_state', '__return_null' );
Run Code Online (Sandbox Code Playgroud)

代码位于活动子主题(或活动主题)的functions.php 文件中。经过测试并有效。

注意: 自 WooCommerce 3 起,default_checkout_country和挂钩已被弃用并被替换default_checkout_state

相关:WooCommerce:在未登录用户的结帐页面中默认设置国家/地区