0

我一直在使用 WP,但始终作为“独立”网站,现在我希望将博客作为我主要网站的一部分,并一直在寻找消除注册/登录冗余的最佳方法理想情况下,使用我的主网站数据库中的用户数据以最简单、最安全的方式安装 WP。WP 博客位于同一台服务器上/位于主站点的子文件夹中。

在发布此之前,我已经四处寻找解决方案,但似乎围绕这个主题的大多数讨论都涉及在多个 WP 站点之间共享用户,而不是与非 WP 主网站共享用户。

我发现了一些可能的选项,但不确定是否可行,如下所示:

1) 一个插件(外部数据库身份验证),似乎是票,但显然有一段时间没有更新,并显示版本 2.9.2 作为最后一个兼容版本。是否有其他/更好/维护的插件替代品?我找不到任何其他看起来像这个一样准确的东西。我确实试图让它工作,但无法登录 WP 安装:

我在我的主网站数据库中创建并添加了一个新用户,检查的唯一权限是“选择”,并使用了表单上的所有主网站数据库信息:

名称:myws_mysitedb | 用户:myws_newwpuser | 密码:新用户的密码 | 用户表:sitetable_logins

用户名:用户名 | 密码:密码 | 加密类型:其他 | 哈希:正是我主站点上使用的软件制造商所说的使用

我还通过主站点注册系统创建了一个用户,其用户名和密码与 WP 安装上的管理员名称/密码完全相同,因为它必须针对主外部数据库对管理员用户进行身份验证。

看到我可能做错了什么吗?我还尝试使用具有所有权限但没有效果的新用户。

2)我已经阅读了关于添加define('CUSTOM_USER_TABLE', $table_prefix.'my_users'); define('CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta'); 但不明白这是否会解决WP端的注册/登录问题,我不确定我是否必须/不应该使用“meta_table”如果主数据库中当前没有这样的表,并且不确定我应该如何指定要使用的另一个表在哪里...我已经读到 $table_prefix 再次参考多个 WP 实例时在同一个数据库(或类似的东西)上,所以我认为我不需要那个。我测试了一些东西,将其更改为:define('CUSTOM_USER_TABLE', custom_databasename.'custom_tablename');

define('CUSTOM_USER_TABLE', 'custom_databasename.custom_tablename');

很简单:define('CUSTOM_USER_TABLE', 'custom_user_table');但两者都不允许我从我的主站点与当前用户一起登录。

我希望这个问题/请求不会令人讨厌,并且没有我应该已经找到自己的明显解决方案,但我很惊讶我无法轻易找到一个简单的分步过程来共享我的用户现有的网站/不同的数据库与一个 Wordpress 博客....

我提前感谢您的任何提示和帮助!

4

1 回答 1

0

一种(有点笨拙)的方法可能是在您的主站点用户表上定义插入/更新触发器。

每当插入或更新用户时,在 wordpress 用户数据库中创建或更新相应的记录。如果您想要双向集成,您也可以在 Wordpress 用户表上创建类似的触发器。

于 2012-06-05T20:54:09.407 回答