用OAuth2帐户覆盖WordPress用户

时间:2014-12-16 作者:Nick

我正在尝试将WordPress设置为OAuth2客户端。我们所有的用户都存储在我们专有的CMS中,CMS是OAuth提供商。我们的WordPress数据库中几乎没有用户,主要是管理员。理想情况下,我不想在WordPress数据库中存储用户数据,因为我需要以某种方式维护X多个WordPress站点的状态,而我在我们的专有CMS中有一个真实来源。

到目前为止,我最初的设计是创建一个插件,覆盖现有WordPress用户功能,并在cookie或会话中存储OAuth访问令牌和用户uuid。但是,我需要这个用户可以在其他插件中访问,因此理想情况下可以覆盖默认的WordPress用户方法。

这是一种可接受的方法吗?或者,我是不是在试图以一种不适合的方式使用WordPress?

我可以找到很多插件将WordPress设置为OAuth2提供者,但作为客户端的插件很少。话虽如此,我发现有一些确实将WordPress设置为客户端,但其中很多都是针对Google应用程序、Facebook、Twitter等的。此外,这些应用程序依赖于在WordPress用户表中本地存储用户数据。我宁愿不这样做。

谢谢你的帮助!

1 个回复
SO网友:Privateer

如果您能够坚持只覆盖位于wp includes/pluggable中的函数。php那么您应该能够避免任何类型的插件冲突。。。除非您使用的插件覆盖了相同的可插入功能。

只需确保在加载pluggables之前声明了您的函数。插件在pluggables文件之前加载。。。因此,如果在插件中定义函数重写,则可以确定它们已加载。否则,只需确保使用较早的操作即可。

其中有相当多的身份验证、cookie和与用户相关的功能可供使用。

结束

相关推荐

Hide username from users list

我使用以下代码从用户管理中隐藏了用户名列:function modify_user_columns($column) { $column = array( \"cb\" => \"<input type=\\\"checkbox\\\" />\", \"username\" => __(\'Username\'), \"name\" => __(\'Name\'),