kn007的个人博客
♥ You are here: Home > 软件与网络 > php > 通过邮件验证身份登录WordPress

通过邮件验证身份登录WordPress

by | 93 Comments

提醒:本文最后更新于 2490 天前,文中所描述的信息可能已发生改变,请仔细核实。

8828ff221e17893fa8ebbb6

不得不说,大发的一些想法,还是不错的。

前几天,大发说博客可以用邮箱登录,不过我去测试了,没收到邮件,没试成。好囧。

因为大发没分享方法,我猜大发肯定是init钩子+AJAX请求。至于链接有效性,我就不知道大发是怎么控制了(猜是用transient或session)。

个人觉得免密码更安全一些,特别是在公共场合,毕竟邮箱现在可以扫码登录,也安全。

引自大发的话(我就不罗嗦太多了):这种方式看上去貌似有些违反直觉,但是其实这个比用密码登录更加安全。如果有人猜中或者破解了你的密码,在你更改密码之前他们都可以无限登录。你可能都不知道有人登录了你的帐号。使用邮箱登录:如果有人试图登录你都会接到通知、登录链接15分钟后就会失效、登录链接只可以使用一次。

嗯,我这次写的mail-login.php借鉴了大发的登录版面,但使用传统的form表单,而非大发使用的js。

除了采用传统表单,所有交互界面,一律用wp_die代替。使用到WP Object Cache API使用了Transients API保存一次性链接密匙,有效期10分钟。所有动作全部封装成函数了,可以拆分拿去用。因只是用晚饭时间写的,所以也没怎么测试,有bug可以提。

本产品任意主题可用,只要将以下两文件放在主题目录里面,并且在functions.php加载mail-login-support.php即可。

建议使用include,在funtions.php添加如下:

include(get_template_directory() . '/mail-login-support.php');

具体效果:
mail-login-supportloper-mail-login
QQ截图20150727232407

mail-login-support.php和mail-login.php文件,详看github项目地址: https://github.com/kn007/wordpress-mail-login-to-dashboard

转载请注明转自:kn007的个人博客的《通过邮件验证身份登录WordPress

donate
有所帮助?

Comments

93 Comments立即评论
  1. 回复

    二次验证

    1. MOD回复

      @Muiteer: 还是没明白。
      你这“智能通过邮箱验证登录”,然后还“二次验证”???
      兄弟,能别打个字都很累,让人猜吗?

    2. MOD回复

      @Muiteer: 还有回复,能不能按旧楼层回复。还开个新楼

    3. 回复

      @kn007: 哈哈,用手机就不是按楼层回了,你现在分享的不是用户名登录,邮箱验证登录都可以,我的意思是说能否收到邮件验证码之类的二次验证登录

    4. MOD回复

      @Muiteer: 你意思是说,还是wp正常的登录页,然后需要邮箱验证码,是吧?

    5. 回复

      @kn007: 对的,类似于Google Authenticator

    6. MOD回复

      @Muiteer: 这个应该有人做过了,甚至有人做了二维码的。你可以找找。
      我这个简单改改代码也能实现就是。

    7. 回复

      @kn007: ok,感谢

    8. MOD回复

      @Muiteer: 客气了

icon_wink.gificon_neutral.gificon_mad.gificon_twisted.gificon_smile.gificon_eek.gificon_sad.gificon_rolleyes.gificon_razz.gificon_redface.gificon_surprised.gificon_mrgreen.gificon_lol.gificon_idea.gificon_biggrin.gificon_evil.gificon_cry.gificon_cool.gificon_arrow.gificon_confused.gificon_question.gificon_exclaim.gif