给WordPress网站的订阅者开启上传文件权限方法

如果想要让用户能够上传图片,只要将用户权限提升至编辑权限就可以实现,那么想要不修改用户角色,如何给订阅者开通上传文件权限呢?今天就分享一下给WordPress网站的订阅者开启上传文件权限方法。

WordPress为了整个系统的安全性,默认订阅者是不能上传图片的,而我们在制作一些主题的时候需要用到用户投稿功能,这个时候我们可以通过下面的代码让订阅者也可以上传图片。

function dahuzi_add_user_rights() {

$role = ‘subscriber’;

$role = get_role($role);

$role->add_cap(‘upload_files’);

}

add_action( ‘admin_init’, ‘dahuzi_add_user_rights’);

将上面的代码添加到当前使用WordPress主题的functions.php文件后,在投稿页面也显示出来了添加媒体的按钮,但是就是点击添加媒体上传图片后提示:抱歉,您不能添加附件到此文章。(如下图所示)

给WordPress网站的订阅者开启上传文件权限方法 (https://www.yunsxr.com/) WordPress基础教程 第1张

抽空研究了一下,还是权限不够的问题,需要完整的实现订阅者用户上传图片,还需要添加「编辑已发布文章」「编辑其他文章」「删除文章」这些权限。

这里直接给出完整代码,将下面的代码放至当前使用WordPress主题的functions.php中。

//增加订阅者权限,使其可以在投稿的时候上传图片,删除图片

function dahuzi_add_user_rights() {

$role = ‘subscriber’;

$role = get_role($role);

$role->add_cap(‘upload_files’);

$role->add_cap(‘edit_others_posts’);

$role->add_cap(‘edit_published_posts’);

$role->add_cap(‘delete_posts’);

}

add_action( ‘admin_init’, ‘dahuzi_add_user_rights’);

需要注意的是,这些权限是直接写进数据库的,开启这些权限后,如需重新禁用这些权限时,直接删除这段代码是不行的。

如需禁用该权限,需要将以上代码中的add_cap替换成remove_cap

比如:

$role->add_cap(‘upload_files’);

替换成:

$role->remove_cap(‘upload_files’);

WordPress教程

如何使用ajax在WordPress后台删除文章?

2020-9-8 9:52:37

WordPress教程

WordPress如何判断登录页面函数is_login()?

2020-9-8 10:12:54




重要声明

本站资源来自会员发布以及互联网收集,不代表本站立场,如有侵犯你的权益请联系管理员-小车站内发信联系 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请用户仔细辨认内容的真实性,避免上当受骗!本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请在下载24小时内删除!


如果遇到付费才可观看的文章,建议升级终身VIP。全站所有资源任意下免费看”。本站资源少部分采用7z压缩,为防止有人压缩软件不支持7z格式,7z解压,建议下载7-zip,zip、rar解压,建议下载WinRAR

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索