允许WordPress贡献者角色上传图片附件
我们先简单了解一下WordPress用户角色拥有的权限:
管理员:和安装WordPress时的创始人一样,拥有对后台的完整权限。
编辑:可以发布文章,拥有对网站所有文章、页面、评论编辑权限。
作者:可以发布文章,但只能编辑自己发布的文章。
投稿者:可以投递文章,但需要管理员审核后文章才能显示,在管理员审核前可以对文章进行编辑,管理员审核后则不能编辑文章,编写文章时上传不了媒体如图片、音频等。
订阅者:只能浏览后台及编辑自己的个人信息。
从权限中可以看出投稿者默认不支持上传图片,这对投稿者造成不便,一篇没有图片的文章怎么能吸引读者呢,那么我们如何让WordPress投稿者支持上传或删除图片呢?
只需要将下面的代码添加到当前主题函数模板functions.php文件中:
// 增加贡献者上传删除图片权限 if ( current_user_can('contributor') && !current_user_can('upload_files') ) add_action('admin_init', 'allow_contributor_uploads'); function allow_contributor_uploads() { $contributor = get_role('contributor'); $contributor->add_cap('upload_files'); }
注意:上面的代码执行一次后,投稿者上传或删除图片的权限会写入数据库,即使将代码从functions.php移除,投稿者仍然拥有上传或删除图片的权限。
要去掉投稿者上传或删除图片的权限,在当前主题的functions.php文件中添加下面代码即可。
// 取消贡献者上传附件权限 if ( current_user_can('contributor') && current_user_can('upload_files') ) add_action('admin_init', 'allow_contributor_uploads'); function allow_contributor_uploads() { $contributor = get_role('contributor'); $contributor->remove_cap('upload_files'); }