我的函数中有一个片段。php从用户列表屏幕的“将角色更改为”下拉菜单中删除管理员角色,这样可以列出用户和管理角色的编辑器将无法将其他用户转换为管理员。下面的代码工作正常。
function isa_pre_user_query($user_search) {
$user = wp_get_current_user();
if (!current_user_can(\'administrator\')) { // Is Not Administrator - Remove Administrator
global $wpdb;
$user_search->query_where =
str_replace(\'WHERE 1=1\',
"WHERE 1=1 AND {$wpdb->users}.ID IN (
SELECT {$wpdb->usermeta}.user_id FROM $wpdb->usermeta
WHERE {$wpdb->usermeta}.meta_key = \'{$wpdb->prefix}capabilities\'
AND {$wpdb->usermeta}.meta_value NOT LIKE \'%administrator%\')",
$user_search->query_where
);
}
}
add_action(\'pre_user_query\',\'isa_pre_user_query\');
现在,我的问题是,如何从下拉列表中删除编辑器角色,以便编辑器无法创建其他编辑器?我想从下拉菜单中删除Admin和Editor角色,并将角色选择仅限于Author、Contributor和Subscriber。
有什么想法吗?