我正在尝试创建一个插件,其中管理员(自定义用户角色,而不是常规管理员)可以访问选项页面,在文本框中输入特定用户名,点击提交,然后添加第二个用户角色给那个用户。我知道这段代码:
$user = new WP_User( null, 'username' );
$user->add_role( 'admin' );
会将“admin”角色添加到使用用户名“username”的用户。所以在我的插件的设置页面中,我有一个文本框:
Add an Admin: <input type="text" size="57" name="sscaur_options[txt_admin]" value="<?php echo $options['txt_admin']; ?>" />
然后在最后:
function sscaur_add_admin($textbox) {
$options = get_option('sscaur_options');
$textbox = $options['txt_admin'];
$user = new WP_User( null, '{$textbox}' );
$user->add_role( 'admin' );
return $textbox;
}
我知道这完全错了,但不知道如何开始做对。
我知道可以使用用户角色编辑器插件添加第二个用户角色,但这是硬编码只提供对实际管理员的访问权限,我需要我的自定义用户角色才能在不满的情况下向特定用户添加角色管理员。