Custom Login Process

时间:2017-12-14 作者:Chad

我们目前有一个登录过程,该过程使用首页来处理登录过程,然后将用户重定向回首页并登录。

这一过程的部分原因是有几个不同的平台已经迁移到我们即将推出的单一wordpress中。问题是,用户有几种不同的登录方式,包括电子邮件地址、遗留系统中存在的用户名、另一个系统中生成的id以及我们当前唯一的数字id。

目前可以使用所有4种不同的方法通过第三方平台登录。我们的业务指示我们保留此功能。

我的想法是在登录过程中捕获提交,调用rest服务并将提交的id传递给他们,然后该服务将返回标准化的id,然后使用wordpress登录功能使用服务返回的用户名和登录表单中输入的密码登录。

我不是wordpress开发人员,但在标准html页面中,使用javascript很容易做到这一点。

有什么理由我不能或不应该为我们的新网站实施这个过程吗?如果是,是否有更好的方法来处理这种情况?

1 个回复
SO网友:WebElaine

对于任何涉及登录的内容,服务器端解决方案都更安全、更兼容(即,如果没有启用JS,则仍会使用精简版)。通常,将现有功能与少量插入的插件一起使用会更安全,以便其他跟上核心修改的人可以维护代码。

您可以使用WP的内置登录系统在服务器端处理其中4种方法中的3种:每个用户都有一个电子邮件地址(使用传统系统中的一个)、一个用户名(使用其他传统系统中的一个),和一个id(使用其他遗留系统中的一个-只要小心,您可以将WP分配的一个更改为另一个数字,您只需更改usermeta表,如果有作者,请确保在WP\\U posts表中更改作者id)。

如果任何遗留系统通过路由或可以改装以提供单一登录服务,还可以使用WordPress SSO插件,允许用户使用CAS、LDAP、Google等进行登录。因此,您可能可以通过这种方式处理第四种情况,而不必自定义任何需要继续维护的代码。

结束

相关推荐

添加内联JavaScript编码问题

在通过以下方式将内联JavaScript添加到WordPress页面的页脚时,我遇到了一个编码问题wp_add_inline_script().以下描述是用于演示的问题的简化版本。因此,我在post editor的metabox中有一个textarea,其中包含以下JavaScript:var test3 = \'3\'; var test4 = \"4\"; 注意使用单引号和双引号进行测试。我还在将包含以下内容的JavaScript文件排入队列:console.log(\"test.j