我正在尝试在注册时向用户添加2个角色。 角色1-2个默认的已预设角色之一。 角色2-在注册时为每个用户单独生成。
仅分配默认角色时-没有分配问题。 当我添加动态生成的角色时,它仅分配此角色,而缺少默认角色。
$user = wp_insert_user( $userdata );
$getuser = new WP_User($user);
$getuser->set_role('profile_1');
add_role(
'user-ID'.$user,
__( 'user-ID'.$user, 'wordpress-66604-809452.cloudwaysapps.com' ),
array(
'read' => true,
'edit_posts' => true,
));
$getuser->set_role('user-ID'.$user);
答案 0 :(得分:0)
从我正在阅读的内容中,set_role删除了角色并仅分配了新角色,就像您所描述的一样
https://codex.wordpress.org/Class_Reference/WP_User#set_role.28.24role.29
set_role($ role) 设置用户的角色。
这将删除用户以前的角色,并为用户分配新的角色。您可以将角色设置为空字符串,这将从用户中删除所有角色。
参数 角色(字符串)-角色名称。 退货 没有 以来 2.0.0 相关动作
add_role($ role) 向用户添加角色。
使用功能和角色更新用户的元数据选项。
参数 角色(字符串)-角色名称。