当前位置:秋叶网络博客 WP教程 ◊ 让WordPress支持用Email登录

让WordPress支持用Email登录

作者:秋叶 发表时间:2015年3月28日

只需要把以下代码加到主题文件夹下的functions.pnp文件里面就行了

  • // 修改WordPress用户名过滤机制,通过Email获取用户名
  • function ludou_allow_email_login($username, $raw_username, $strict) {
  • if (filter_var($raw_username, FILTER_VALIDATE_EMAIL)) {
  • $user_data = get_user_by('email', $raw_username);
  • if (empty($user_data))
  • wp_die(__('<strong>ERROR</strong>: There is no user registered with that email address.'), '用户名不正确');
  • else return $user_data->user_login;
  • }else {return $username;}}
  • // 修改登录界面的文字,"用户名"改成"用户名或邮箱"
  • function ludou_change_text() {
  • echo '<script type="text/javascript">
  • var user_login_node = document.getElementById("user_login");
  • var old_username_text = user_login_node.parentNode.innerHTML;
  • user_login_node.parentNode.innerHTML = old_username_text.replace(/用户名/, "用户名或邮箱");</script>';}
  • if (in_array($GLOBALS['pagenow'], array('wp-login.php')) && strpos($_SERVER['REQUEST_URI'], '?action=register') === FALSE && strpos($_SERVER['REQUEST_URI'], '?action=lostpassword') === FALSE && strpos($_SERVER['REQUEST_URI'], '?action=rp') === FALSE ) {
  • add_filter('sanitize_user', 'ludou_allow_email_login', 10, 3);
  • add_action('login_footer', 'ludou_change_text');}
  • 转载请保留链接:让WordPress支持用Email登录 | 出处:秋叶个人博客| 本文链接地址:http://www.mizuiren.com/308.html
    目录: WP教程 | 标签: | 7430次阅读