Đa số chúng ta thường sử dụng cùng một địa chỉ email để đăng ký thành viên của một website nào đó.
Việc này giúp dễ dàng hơn khi phải khôi phục lại password khi bạn quên mất nó.
Để đăng nhập vào một website WordPress, chúng ta thường phải nhớ và sử dụng username và password mà mình đã đăng ký.
Chúng ta có thể tạo sự khác biệt bằng cách cho phép người dùng đăng nhập vào bằng chính email mà họ đã dùng để đăng ký
Đầu tiên, mở file functions.php của theme mà bạn đang dùng thêm vào đoạn code sau:
function login_with_email_address($username) { $user = get_user_by_email($username); if(!empty($user->user_login)) $username = $user->user_login; return $username; } add_action('wp_authenticate','login_with_email_address');
Đoạn code trên dùng để lấy username của người dùng từ email dùng đăng nhập
Để nhắn nhở người dùng có thể dùng email để đăng nhập ta nên chỉnh sửa lại trang wp-login.php của WordPress
Chúng ta mở file wp-login.php nằm trong thư mục cài WordPress trên hosting và tìm đến dòng code sau:
<p> <label for="user_login"><?php _e('Username') ?><br /> <input type="text" name="log" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label> </p> <p> <label for="user_pass"><?php _e('Password') ?><br /> <input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20" /></label> </p>
Thay thế “Username” bằng “Username or Email Address” để nhắc nhở người dùng
<p> <label for="user_login"><?php _e('Username or Email Address') ?><br /> <input type="text" name="log" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label> </p> <p> <label for="user_pass"><?php _e('Password') ?><br /> <input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20" /></label> </p>
Tuy nhiên sự thay đổi trong file wp-login.php sẽ thay đổi nếu bạn cập nhập WordPress.
Bạn chỉ cần thay đổi lại file wp-login.php theo cách trên là đâu sẽ vào đấy