首页 > 解决方案 > Wordpress Woocommerce 删除帐户用户名验证

问题描述

我想在我的 wordpress woocommerce 注册页面中使用 10 位数的手机号码。

使用手机号码作为用户名时,我收到一条错误消息:

错误:请输入有效的帐户用户名。

我还为上面添加了屏幕截图: 屏幕短[1] 第二张图片

我从昨天开始搜索,没有运气。

标签: phpwordpresswoocommerce

解决方案


就 woo-commerce 而言,没有使用手机号码登录的默认选项。

您已在 functions.php 文件中添加自定义函数,其中包含操作和挂钩来修改现有代码,以便能够通过手机号码登录。

有关详细信息,请参阅此链接:https ://medium.com/@omarkasem/login-with-phone-number-in-woocommerce-wordpress-f7d6d07964d8

函数.php

添加自定义字段

function wooc_add_phone_number_field() {
    return apply_filters( 'woocommerce_forms_field', array(
        'wooc_user_phone' => array(
            'type'        => 'text',
            'label'       => __( 'Phone Number', ' woocommerce' ),
            'placeholder' => __( 'Your phone number', 'woocommerce' ),
            'required'    => true,
        ),
    ) );
}
add_action( 'woocommerce_register_form', 'wooc_add_field_to_registeration_form', 15 );
function wooc_add_field_to_registeration_form() {
    $fields = wooc_add_phone_number_field();
    foreach ( $fields as $key => $field_args ) {
        woocommerce_form_field( $key, $field_args );
    }
}

保存到数据库

add_action( 'woocommerce_created_customer', 'wooc_save_extra_register_fields' );
function wooc_save_extra_register_fields( $customer_id ) {
    if (isset($_POST['wooc_user_phone'])){
        update_user_meta( $customer_id, 'wooc_user_phone', sanitize_text_field( $_POST['wooc_user_phone'] ) );
    }
}

推荐阅读