删除结算字段时出现WooCommerce错误:“请输入要继续的地址。”

时间:2017-10-10 16:51:19

标签: wordpress woocommerce

我已通过向functions.php添加以下行删除了WooCommerce结帐页面上的结算字段:

add_filter("woocommerce_checkout_fields", "remove_billing_fields");
function remove_billing_fields($fields) {
    unset($fields["billing"]["billing_first_name"]);
    unset($fields["billing"]["billing_last_name"]);
    unset($fields["billing"]["billing_company"]);
    unset($fields["billing"]["billing_address_1"]);
    unset($fields["billing"]["billing_address_2"]);
    unset($fields["billing"]["billing_city"]);
    unset($fields["billing"]["billing_postcode"]);
    unset($fields["billing"]["billing_country"]);
    unset($fields["billing"]["billing_state"]);
    unset($fields["billing"]["billing_email"]);
    unset($fields["billing"]["billing_phone"]);
    return $fields;
}

这会删除结算字段,并根据需要保留发货字段。但是,现在我在结账时收到错误:

Please enter an address to continue.

但是,所有运输字段都已填写。请求通过AJAX(/shop/checkout?wc-ajax=checkout)发送。在检查请求时,我看到正在发送以下字段:

billing_email:john@example.com
shipping_first_name:John
shipping_last_name:Doe
shipping_address_1:123 Easy St
shipping_address_2:
shipping_country:US
shipping_state:NY
shipping_city:New York
shipping_postcode:12345
billing_phone:123-456-7890
payment_method:stripe
wc-stripe-payment-token:abc123
_wpnonce:abc123
_wp_http_referer:/shop/checkout

请注意,在设置结算字段时请求会完成,因此我相信其他所有内容都已正确设置。有什么想法为什么会抛出这个错误?

1 个答案:

答案 0 :(得分:2)

我发现虽然我可以隐藏billing_country字段,但是为了计算税金和运费,它是必需的,即使WooCommerce被配置为默认使用运费字段。