When non-admin users upload media, They get the following error:
我检查过的事情:
- wp-content/uploads 及其所有子文件夹的权限为 755。
Core capabilities and custom for a test user ( who gets this error) is set for yes for media_upload
Refer to the image below:
停用所有插件,问题仍然存在。
- 据我所知,用户上周早些时候能够上传图像。从那时起,代码没有进行任何更改。
如果有人遇到类似的问题,我愿意寻求建议。谢谢。
更新
从 wp-admin/includes/ajax-action.php 中,我删除了以下部分:
if ( isset( $_REQUEST['post_id'] ) ) {
$post_id = $_REQUEST['post_id'];
if ( ! current_user_can( 'edit_post', $post_id ) ) {
echo wp_json_encode( array(
'success' => false,
'data' => array(
'message' => __( "You don't have permission to attach files to this post." ),
'filename' => $_FILES['async-upload']['name'],
)
) );
wp_die();
}
}
我意识到这只是查看用户功能的检查点,但我不完全理解为什么删除这部分有助于解决问题。现在测试用户可以成功上传媒体(媒体上传之前也成功)并且没有权限错误,底部的“上传媒体”按钮不再是灰色的,所以我可以正常上传。
谢谢
根本不建议删除核心 WP 代码!
此类错误的原因通常是您的托管环境中的 PHP 上传限制。请参阅此处如何更改 PHP 值的示例:更改最大上传文件大小 https://stackoverflow.com/questions/2184513/change-the-maximum-upload-file-size
但是查看帖子帖子类型的功能屏幕截图,似乎您的角色甚至无法编辑帖子。我首先至少启用此功能:edit_posts
。也许还有一些其他与职位相关的能力。
作为参考,这里有一个有用的表格,可以帮助您了解 WordPress 角色和功能:能力与角色表 https://codex.wordpress.org/Roles_and_Capabilities#Capability_vs._Role_Table
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)