我在wp-config中定义了一个自定义用户表。
define('CUSTOM_USER_TABLE', 'wp_users');
define('CUSTOM_USER_META_TABLE', 'wp_usermeta');
但是,当我尝试打印出登录的用户信息时,似乎缺少user_level并且角色为空。有什么想法吗?
感谢任何帮助!!!!
答案 0 :(得分:3)
如果您只为单个用户表使用多个WordPress安装,则WordPress将仅为您创建用户的WordPress安装生成用户角色。
因此,如果您在john_doe
上创建site1
,john_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