如何在 WordPress 中轻松管理最终用户上传的媒体

已发表: 2023-02-28


您想在 WordPress 中按用户安排媒体上传吗?

如果您运营一个多作者站点,那么您可能希望将几乎每个作者的媒体库的访问权限限制为仅允许他们个人上传。 这可以防止创作者意外删除其他用户的视频,并有助于保护仅限订阅者的内容。

在本报告中,我们将清楚地向您展示如何在 WordPress 中安排客户上传的媒体文件。

How to organize media uploads by users in WordPress

为什么限制作者进入媒体上传?

如果您有一个多作者 WordPress 博客,那么人们可能会上传大量不同的照片。 这会使作者很难找到合适的图形,或者他们可能会不小心删除或编辑另一个人的媒体文件。

这可能会导致各种问题,包括生产力低下、网站管理员和编辑的额外工作负载以及复杂的编辑工作流程。

这种无限访问也可能是一个隐私问题。 例如,如果您正在开发新产品或想法,那么其他作者可能会在您发布一般公告之前在媒体库中看到机密图像。

如果您有一个 WordPress 会员网站,那么贡献者和订阅者可能能够访问他们不应该访问的高质量媒体文件。 例如,如果您推广在线程序,那么贡献者可以使用他们的媒体库可访问性来获取高质量的 PDF 和其他学习课程资料,而无需获得会员资格。

目前正在声明中,让我们来看看如何限制谁可以在您的 WordPress 管理区域内看到媒体上传。 基本上使用下面的快速返回链接直接跳转到您要使用的系统。

技术 1. 安排用户使用插件上传媒体(快速且简单)

限制媒体上传获取的最直接方法是使用 Frontier Prohibit 获取插件。

这个完全免费的插件会检查用户是否拥有edit_some others_posts权限,这让他们可以编辑其他用户的帖子。

默认情况下,此功能授予具有网页管理员或编辑目的的每个人。 如果你想改变这一点,那么你可以在 WordPress 中添加或删除消费者角色的功能。

如果用户没有这个权限,那么当这个插件被激活时,他们将无法获取不同用户在WordPress媒体库中的文件。 这使您可以管理人们上传的媒体,而不会限制管理员和编辑的可访问性。

该插件开箱即用,您无需配置任何设置,因此您只需设置并激活 Frontier Prohibit Accessibility 插件即可。 有关更多信息,请参阅我们关于如何安装 WordPress 插件的教程。

策略 2. 使用代码组织媒体上传(高级)

另一种选择是禁止使用代码访问媒体库中的文件。 该系统要求您将代码片段合并到您的 WordPress 博客站点或网站,因此这不是对新手最有帮助的方法。 尽管如此,您不必为了安排媒体上传而安装单独的插件。

通常,您会获得指南,其中包含为您的 WordPress 概念添加定制代码的指南。 但是,这并不是建议,因为代码中的错误和拼写错误会导致典型的 WordPress 故障,甚至完全破坏您的网站。

这就是我们提出 WPCode 的原因。

WPCode 是超过 100 万个 WordPress 网站使用的最好的代码片段插件。 它有助于在不编辑 features.php 文件的情况下轻松地在 WordPress 中插入自定义代码。

对于此过程,我们将合并代码来检查消费者是否具有edit_other people_posts权限。 如果他们从来没有此权限,那么下面的代码片段将阻止他们访问 WordPress 媒体库中其他人的数据文件。

您首先需要做的是安装并激活免费的 WPCode 插件。 有关更多详细信息,请参阅我们关于如何设置 WordPress 插件的详细指南。

激活后,前往代码片段 » 包含片段

How to add custom PHP snippets to your site using WPCode

在这里,只需将鼠标悬停在“添加您的定制代码”上。

当它出现时,点击“使用片段”。

Adding a custom code snippet to WordPress

首先,为定制的代码片段输入一个标题。 这可以帮助您识别 WordPress 仪表板中的片段。

紧接着,打开“代码类型”下拉菜单并选择“PHP 代码段”。

Restricting access to the media library using WPCode

在“代码预览”区域,粘贴下一个代码片段:

add_filter( 'ajax_query_attachments_args', 'user_exhibit_attachments' )
 
functionality person_demonstrate_attachments( $question ) 
    $person_id = get_present-day_consumer_id()
    if ( $user_id && !current_user_can('activate_plugins') && !current_consumer_can('edit_many others_posts
') ) 
        $question['author'] = $person_id
    
    return $question
 

接下来,只需滚动到“插入”部分。 WPCode 可以将您的代码添加到不同的位置,这些类型是在每个帖子之后、仅前端或仅管理员。

我们想在整个 WordPress 网站上使用自定义 PHP 代码,所以如果现在还没有选择,请点击“自动插入”。 然后,打开“位置”下拉菜单并选择“几乎无处不在”。

Running custom PHP code across your website using WPCode

之后,您就可以滚动到主屏幕,只需单击“不活动”开关,它就会变为“活动”。

最后,单击“保存代码段”以保留 PHP 代码段。

How to restrict access to media files using code

现在,最终用户只能访问他们上传到 WordPress 媒体库的文件。

我们希望这篇文章能帮助您更好地管理买家在您的 WordPress 网站上上传的媒体文件。 接下来,您可以查看我们的顶级 WordPress 安全指南或查看我们精选的 WordPress 最佳呼叫类型插件。

如果您喜欢这篇短文,请记得订阅我们的 YouTube 频道以获取 WordPress 在线视频教程。 您也可以在 Twitter 和 Facebook 上找到我们。