仅清除Woocommerce

时间:2018-06-11 09:57:14

标签: php wordpress woocommerce checkout hook-woocommerce

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

我正在使用此代码

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

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

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

有人知道解决方案吗?

1 个答案:

答案 0 :(得分:0)

woocommerce_checkout_get_value隐藏功能中存在一些参数错误 事实上有两个论点:

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

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

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文件中。经过测试和工作。