如何覆盖浏览器数据并在woocommerce结帐页面中从字段设置默认值?

时间:2019-06-07 02:14:39

标签: php wordpress woocommerce cart checkout

我正在尝试在woocommerce结帐页面上设置默认变量值

$fields['address_1']['default'] = $cart_item['address'];

只有当客户第一次下订单时,当处理浏览器数据中的其他订单是预先填写的字段时,它才能很好地工作,所以我已经使用了

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

此过滤器返回的字段为空,但默认值也返回空。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用:

add_filter( 'woocommerce_checkout_get_value', 'clear_shipping_fields_values', 5, 2 );
function clear_shipping_fields_values( $value, $input ) {
    $items = WC()->cart->get_cart();
    $item  = reset( $items );

    if( is_checkout() && isset($item['address']) && in_array( $input, ['billing_address_1', 'shipping_address_1'] ) {
        $value = $item['address'];
    }
    return $value;
}

代码进入活动子主题(或活动主题)的functions.php文件中。应该可以。