WordPress删除用户注册以实现自定义

时间:2018-11-23 21:55:36

标签: php wordpress

我正在将用户验证功能集成到正在开发的插件中,由此用户必须通过单击发送给他们的链接来验证其电子邮件地址。

它基于Github

上提供的代码

此刻,我创建一个“临时”用户,然后从用户表中删除该用户。只有在验证之后,用户才会重新添加到用户表中。

是否有一种方法可以禁用Wordpress中的核心用户注册,这样我就不必删除用户,因此,直到由验证码创建该用户后,该用户才被存储在数据库中?

很自然地,我发现用户ID每一位都在跳过,例如,一个经过验证的用户的ID为“ 1”,而下一个为“ 3”。

谢谢

利昂

1 个答案:

答案 0 :(得分:0)

一种标准的做法是通过表用户中的字段进行设置,例如,当用户通过您的链接验证其电子邮件时,该字段将设置为true。

通过此字段,您可以控制如果该字段未经验证,则不要让他们登录您的网站。 因此,要应用此功能,您需要在wordpress中找到控件要登录的部分,以在此新字段中添加限制

我要更具体一些,所以您可以删除下注...

例如,让我们假设您有一个名为email_verify的字段,如果该电子邮件已经通过验证,则该字段仅包含1或0。 然后,您将拥有另一个字段,例如带有sha1或random令牌的session_token,该字段对于单击该电子邮件时将验证电子邮件的链接必须是唯一的。

您需要有一个php函数,当有人输入该链接时,该函数会捕获,您可以通过从链接中提取sha1作为url参数并在您的表中搜索具有该session_token的人(当您找到带有此记录的记录)来进行捕获session_token,然后将您的email_verify值设置为1,表示该电子邮件已经通过验证,然后将session_token字段设置为空,以便链接过期。