Return woocommerce 结帐表单中的空字符串

Return empty strings in woocommerce checkout form

我想 return 除一个(billing_country 那个)之外的所有结帐表单字段上的空字符串。

我已经知道如何处理所有字段:

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


以及如何只用一个字段来做到这一点:

add_filter('woocommerce_checkout_get_value','custom_checkout_get_value_ship_ville', 10, 2);
function custom_checkout_get_value_ship_ville( $value, $imput ){
    if($imput == 'shipping_city')
      $value = '';
    return $value;
}


但是对于除了一个之外的所有人......我有点卡住了。 我通过复制和改编之前的函数获得了成功,但它只是 returning 空字符串的大量代码。

我尝试了 else、elsif、switch 和逻辑运算符,但没有结果。

所以如果有人有线索...... 谢谢

如果您想 return 为 $imput 的每个值清空字符串(一个特定值除外),您需要反转第二个代码片段的比较。因此,不是比较 $imput 是否等于一个值,而是比较 $imput 是否不等于一个值。

您可以在此处阅读此比较:http://php.net/manual/en/language.operators.comparison.php

您也可以直接 return 一个空字符串而不将其分配给变量:

add_filter('woocommerce_checkout_get_value','custom_checkout_get_value_ship_ville', 10, 2);
function custom_checkout_get_value_ship_ville( $value, $imput ){
    if($imput != 'billing_country') {
      return '';
    }

}