首页 > 解决方案 > 在 WooCommerce Checkout 上禁用 Chrome 自动完成/下拉建议

问题描述

我正在尝试在结账时为我的客户禁用 Chrome 自动填充/下拉建议。我有一个地址验证工具,但客户仍在使用 Chrome 下拉建议,并且有时会忽略街道名称和其他详细信息,因此我不得不手动联系客户以获取信息。

我尝试了以下代码来删除帐单地址的自动完成,因为文本是输入类型但没有成功。

add_filter( 'woocommerce_form_field', 'change_autofill', 1, 1 );

function change_autofill( $field) {
    
    $agent = $_SERVER['HTTP_USER_AGENT'];
    
    if (strpos($agent, 'Firefox') !== false) {
        $field = str_replace('autocomplete="text"', 'autocomplete="off"', $field);
        return $field;
    }   
    else {
        $field = str_replace('autocomplete="text"', 'autocomplete="none"', $field);
        return $field;
    }      
    
}

标签: woocommercecheckoutwoocommerce-checkout-fields

解决方案


使用此处提供的属性的以下解决方案

https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

/* Disable autofill address */

add_filter( 'woocommerce_form_field', 'change_autofill', 1, 1 );

function change_autofill( $field) {
    
    $agent = $_SERVER['HTTP_USER_AGENT'];
    
    if (strpos($agent, 'Firefox') !== false) {
        $field = str_replace('autocomplete="address-line1"', 'autocomplete="off"', $field);
        return $field;
    }   
    else {
        $field = str_replace('autocomplete="address-line1"', 'autocomplete="none"', $field);
        return $field;
    }      
    
}

推荐阅读