您可以在加载metabox时检查用户角色。
//get user
$user_id = get_current_user_id();
$user = new WP_User($user_id);
//check user role
if($user->roles[0] == \'administrator\' || $user->roles[0] == \'editor\') {
//add your metabox here
}
这样,metabox只会添加到供编辑和用户使用的帖子中,您可能希望将保存功能包装在类似的条件下,以便它不会在每次保存帖子时都尝试运行。
EDIT: 如果您计划在任何其他网站上使用此插件或将其发布给其他人使用,我还建议您为插件设置一个选项页,以便可以从当前用户角色列表中选择能够使用此插件的用户角色。
这样也可以考虑自定义用户角色。