删除 WooCommerce 结帐字段值
Remove WooCommerce checkout fields values
我正在尝试在我的 WooCommerce 结帐字段上应用 autocomplete="off"
,但它不起作用。
有没有办法为结帐表格做到这一点?
我查看了文档,那里没有可用的内容。我也尝试将默认值设置为空,但它也不起作用。当然,这是在用户未登录的情况下。
更新:
我按照@smvax 的建议尝试了unset
,但效果不佳。
add_filter('woocommerce_checkout_fields', 'default_values_checkout_fields');
function default_values_checkout_fields($fields) {
if (!is_user_logged_in()) {
unset($fields['billing_city']);
unset($fields['billing_first_name']);
unset($fields['billing_last_name']);
unset($fields['billing_company']);
unset($fields['billing_address_1']);
unset($fields['billing_address_2']);
unset($fields['billing_city']);
unset($fields['billing_postcode']);
unset($fields['billing_country']);
unset($fields['billing_state']);
unset($fields['billing_email']);
unset($fields['billing_phone']);
unset($fields['shipping_city']);
unset($fields['shipping_first_name']);
unset($fields['shipping_last_name']);
unset($fields['shipping_company']);
unset($fields['shipping_address_1']);
unset($fields['shipping_address_2']);
unset($fields['shipping_postcode']);
unset($fields['shipping_country']);
unset($fields['shipping_state']);
return $fields;
}
}
我也试过 here 的答案,但还是不行。
谢谢
您可以使用 Wordpress '__return_empty_string'
with woocommerce_checkout_get_value
WooCommerce 过滤器挂钩以这种方式简单地获取空值:
add_filter('woocommerce_checkout_get_value','__return_empty_string', 1, 1);
This will empty all checkout values, when checkout page is loaded.
代码在您的活动子主题(或主题)的 functions.php 文件或任何插件文件中。
此代码已经过测试并且有效。
You should reset all existing sessions in Woocommerce settings > System status > tools and also the cache if your e-commerce use any.
Also empty your browser cache and stored data.
相关:
您可以使用 woocommerce_checkout_fields 过滤器为表单字段设置 autocomplete="off"。
add_filter('woocommerce_checkout_fields', 'autocomplete_off_checkout_fields');
function autocomplete_off_checkout_fields($fields) {
$fields['billing_first_name']['autocomplete'] = 'off';
return $fields;
}
}
这将适用于所有 woocommerce 结帐字段。
我正在尝试在我的 WooCommerce 结帐字段上应用 autocomplete="off"
,但它不起作用。
有没有办法为结帐表格做到这一点?
我查看了文档,那里没有可用的内容。我也尝试将默认值设置为空,但它也不起作用。当然,这是在用户未登录的情况下。
更新:
我按照@smvax 的建议尝试了unset
,但效果不佳。
add_filter('woocommerce_checkout_fields', 'default_values_checkout_fields');
function default_values_checkout_fields($fields) {
if (!is_user_logged_in()) {
unset($fields['billing_city']);
unset($fields['billing_first_name']);
unset($fields['billing_last_name']);
unset($fields['billing_company']);
unset($fields['billing_address_1']);
unset($fields['billing_address_2']);
unset($fields['billing_city']);
unset($fields['billing_postcode']);
unset($fields['billing_country']);
unset($fields['billing_state']);
unset($fields['billing_email']);
unset($fields['billing_phone']);
unset($fields['shipping_city']);
unset($fields['shipping_first_name']);
unset($fields['shipping_last_name']);
unset($fields['shipping_company']);
unset($fields['shipping_address_1']);
unset($fields['shipping_address_2']);
unset($fields['shipping_postcode']);
unset($fields['shipping_country']);
unset($fields['shipping_state']);
return $fields;
}
}
我也试过 here 的答案,但还是不行。
谢谢
您可以使用 Wordpress '__return_empty_string'
with woocommerce_checkout_get_value
WooCommerce 过滤器挂钩以这种方式简单地获取空值:
add_filter('woocommerce_checkout_get_value','__return_empty_string', 1, 1);
This will empty all checkout values, when checkout page is loaded.
代码在您的活动子主题(或主题)的 functions.php 文件或任何插件文件中。
此代码已经过测试并且有效。
You should reset all existing sessions in Woocommerce settings > System status > tools and also the cache if your e-commerce use any.
Also empty your browser cache and stored data.
相关:
您可以使用 woocommerce_checkout_fields 过滤器为表单字段设置 autocomplete="off"。
add_filter('woocommerce_checkout_fields', 'autocomplete_off_checkout_fields');
function autocomplete_off_checkout_fields($fields) {
$fields['billing_first_name']['autocomplete'] = 'off';
return $fields;
}
}
这将适用于所有 woocommerce 结帐字段。