繁体   English   中英

仅清除 Woocommerce 中的某些结帐字段值

[英]Clear only some checkout fields values in Woocommerce

在 Woocommerce 中,我试图清除结帐字段。 因此,当用户之前订购了某样东西,现在再次订购时,他/她将不得不再次填写他/她的所有信息。

我正在使用此代码

function clear_checkout_fields($input){
return '';
}

add_filter( 'woocommerce_checkout_get_value' , 'clear_checkout_fields' , 1);

现在此代码正在清除所有字段,但它也将我的增值税更改为显示为 0。

有谁知道这个问题的解决方案?

您的woocommerce_checkout_get_value挂钩函数中存在一些参数错误。
实际上有两个论点:

  • 返回的$value参数,因为它是一个过滤器钩子,
  • 可用于定位任何结帐字段的$imput参数。

因此,在您的情况下,您将使用$imput参数,以避免清空您的自定义增值税结帐字段。 在下面的代码中,您需要用在自定义增值税结帐字段中设置的正确字段name属性替换vat_number

add_filter( 'woocommerce_checkout_get_value' , 'clear_checkout_fields' , 10, 2 );
function clear_checkout_fields( $value, $input ){
    if( $input != 'vat_number' )
        $value = '';
    
    return $value;
}

代码位于活动子主题(或活动主题)的 function.php 文件中。 测试和工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM