问题描述

我有一个运行正常的 WP 博客 (博客 1) 。我想为我的用户创建一个 Q& A 部分,所以我设置另一个博客与 WP-Answer 主题 (博客 2) 。

问题是我不希望我的博客 1 的用户必须在博客 2 注册提出问题。我希望他们在博客 2 上自动授予相同的权限。

怎么可以实现呢?你有什么建议吗?

非常感谢你。

最佳解决方法

我想你想将第二个站点安装在同一个数据库上,但是使用不同的表前缀,例如 $table_prefix = "qa_";wp-config.php

然后,您可以通过将以下行添加到 wp-config.php 来定义自定义用户和/或 user_meta 表

define('CUSTOM_USER_TABLE', [orig_table_prefix].'my_users');
define('CUSTOM_USER_META_TABLE', [orig_table_prefix].'my_usermeta');

资料来源:http://codex.wordpress.org/Editing_wp-config.php#Custom_User_and_Usermeta_Tables

我以前读过某个地方,可能需要在第二个网站上解决几个管理员用户的问题,目前无法找到链接。

次佳解决方法

我认为最简单的办法就是保留一个网站,只将你的 Q&A 样式应用到你需要的页面上。这样你就可以将所有内容集中在一个 WP 安装中。

如果您使用 body_class(),您可以从 CSS 中定位任何页面/帖子,并应用所需的样式。

它会这样的,如果你的问答页面有一个名为 question_answer.php 的通用模板,你可以像下面的样式:

.page-template-question_answer{ background:#FAFAFA }
.page-template-question_answer #conent{ width:500px }

第三种解决方法

我猜你可能希望他们自动登录到 Q& A 网站,否则没有比注册两次好多了。您最好的打赌可能是将您的原始站点更改为多站点实例,并将 Q& A 站点作为同一 WordPress 安装中的另一站点。然后找到一个将自动授予某个用户角色的插件,而无需手动添加它们,例如 http://wordpress.org/extend/plugins/multisite-user-management/

另请参阅:http://codex.wordpress.org/Create_A_Network

如果您是共享主机,那么您可能遇到难以获得多站点设置的问题,但仍然可能是最佳解决方案。

第四种方法

不要忘记,您不仅需要指向您的子站点的 wp-config.php 中的主站点用户表的 CUSTOM_USER_(META_)TABLE,而且 AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY, NONCE_KEY 常量应与您的主站点完全相同。这将避免生成新密码。应该开箱即用

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。