Wordpress自定义用户表

时间:2011-09-22 07:10:30

标签: php wordpress

我在wp-config中定义了一个自定义用户表。

define('CUSTOM_USER_TABLE', 'wp_users');
define('CUSTOM_USER_META_TABLE', 'wp_usermeta');

但是,当我尝试打印出登录的用户信息时,似乎缺少user_level并且角色为空。有什么想法吗?

感谢任何帮助!!!!

2 个答案:

答案 0 :(得分:3)

如果您只为单个用户表使用多个WordPress安装,则WordPress将仅为您创建用户的WordPress安装生成用户角色。

因此,如果您在john_doe上创建site1john_doe将在site1 上分配用户角色(无论是管理员,编辑,作者等) ),但site2不会为john_doe分配用户角色。这被称为“孤儿角色”。当john_doe登录site2时,他会收到You do not have sufficient permissions to access this page错误消息。

因此,您可以手动将角色添加到usermeta数据库中,也可以让管理员更新该安装的用户角色,或者最后您可以使用插件。我找到了一个插件,可以更轻松地管理孤立的用户角色。它被称为 WP-Orphanage Extended

我还创建了一个视频截屏视频,解释了整个问题,并展示了如何为多个WordPress网站使用单个用户表。您可以在此处找到它:http://mikemclin.net/single-users-table-multiple-wordpress-sites/

答案 1 :(得分:0)

用户角色存储在wp_options中,带有option_name:wp_user_roles 这是存在的,还是空的? 您的所有表格都以“wp_”为前缀吗?

如果是的话。
wp_usermeta中,您必须设置meta_key:wp_user_level
另请检查meta_key wp_capabilities