功能REMOVE_USERS和DELETE_USERS之间有什么区别?

时间:2019-04-19 作者:reed

在功能列表中,我发现两者都有remove_usersdelete_users. 我不清楚是什么remove_users 应该这样做,Codex文档只是说它是在3.0版中引入的(https://wordpress.org/support/article/roles-and-capabilities/).

2 个回复
最合适的回答,由SO网友:butlerblog 整理而成

在常规(单次安装)WordPress中,差别实际上没有什么不同。它在多站点安装(网络)中存在差异。

在multisite中,只有超级管理员(可以管理网络上的所有内容)具有delete_users 能力,而“管理员”(拥有/管理单个站点)可以remove_users 但无法从网络中删除。

希望这有助于澄清。

SO网友:Klemart3D

remove_users 不再使用。

资料来源:https://wpfront.com/wordpress-plugins/user-role-editor-plugin/wordpress-capabilities/#remove_users

使用delete_users 而是在多站点安装(网络)或单个安装中。

我们也可以在网上看到一些错误like here:

即使具有delete\\u users权限,您也无法删除拥有比您更多权限的用户。

这是错误的,一个编辑器用户delete_users (和list_users) 功能可以使用以下代码删除管理员:

function add_editor_delete_users_cap() {
    if ( $role = get_role( \'editor\' ) ) {
        if( !$role->has_cap( \'list_users\' ) ) $role->add_cap( \'list_users\' );
        if( !$role->has_cap( \'delete_users\' ) ) $role->add_cap( \'delete_users\' );
    }
}
add_action( \'admin_init\', \'add_editor_delete_users_cap\' );

相关推荐

使WordPress在USERS屏幕上显示wp_USERS表时,将默认用户元与另一个表中的列联接

我正在创建一个插件,将自定义的可排序列(声誉分数)添加到admin page>users中显示的users表中,问题是该列的数据应该从MySQL表wp\\U user\\U Reputation中提取(userid,user_reputation_score) [为我们自己的目的而创建]。我的评估是,我需要在查询中显示该列,以便为其添加排序功能。如何使make WordPress以wp\\u user\\u信誉加入wp\\u users表。我感谢你的帮助。