首页 » 建站技术 » WordPress » 浏览内容

让WordPress支持用户名或邮箱登录


2013-07-28 08:54:55 1,574 0 发表评论 字体: 作者:C.K.

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

本文来自:http://www.wpdaxue.com/login-with-username-or-email-address.html

允许你的WordPress站点通过用户名或邮箱登录,是提高用户体验的好方法,毕竟很多时候,用户不太记得自己注册的用户名。同时我们还要将默认的“用户名”修改为“用户名/邮箱”提示用户:

2013-7-28

将下面的代码添加到当前主题的 functions.php 文件即可

//让WordPress支持用户名或邮箱登录
  • function dr_email_login_authenticate( $user, $username, $password ) {
  •     if ( is_a( $user, 'WP_User' ) )
  •         return $user;
  •  
  •     if ( !empty( $username ) ) {
  •         $username = str_replace( '&', '&', stripslashes( $username ) );
  •         $user = get_user_by( 'email', $username );
  •         if ( isset( $user, $user->user_login, $user->user_status ) && 0 == (int) $user->user_status )
  •             $username = $user->user_login;
  •     }
  •  
  •     return wp_authenticate_username_password( null, $username, $password );
  • }
  • remove_filter( 'authenticate', 'wp_authenticate_username_password', 20, 3 );
  • add_filter( 'authenticate', 'dr_email_login_authenticate', 20, 3 );
  •  
  • //替换“用户名”为“用户名 / 邮箱”
  • function username_or_email_login() {
  •     if ( 'wp-login.php' != basename( $_SERVER['SCRIPT_NAME'] ) )
  •         return;
  •  
  •     ?><script type="text/javascript">
  •     // Form Label
  •     if ( document.getElementById('loginform') )
  •         document.getElementById('loginform').childNodes[1].childNodes[1].childNodes[0].nodeValue = '<?php echo esc_js( __( '用户名/邮箱', 'email-login' ) ); ?>';
  •  
  •     // Error Messages
  •     if ( document.getElementById('login_error') )
  •         document.getElementById('login_error').innerHTML = document.getElementById('login_error').innerHTML.replace( '<?php echo esc_js( __( '用户名' ) ); ?>', '<?php echo esc_js( __( '用户名/邮箱' , 'email-login' ) ); ?>' );
  •     </script><?php
  • }
  • add_action( 'login_form', 'username_or_email_login' );
  • 如果你不喜欢折腾代码,可以下载安装 WP Email Login 插件。

      网站统计 Statistics

      • 创建时间: 2005年1月3日 距今5012 天
      • 日志总数: 2461
      • 评论总数: 630
      • 标签总数: 654
      • 链接总数: 273
      • 最后更新: 2018-8-31 17:57:04
      • 您是本站第 13943214 位访客

      广告区 Guǎng Gào