角色为subscriber
的用户的wordpress网站存在权限问题。
角色为administrator
的用户可以通过wp媒体上传器从前端上传图像,从同一个表单上传也没问题。但每当用户从同一表单上传图像时,在firebug控制台中,我会看到/wp-admin/admin-ajax.php
ajax,它会返回状态为200
的0
在这个ajax之后,另一个ajax被称为/wp-admin/async-upload.php
,它有一个302
,它试图使用ajax重定向到/wp-login.php?redirect_to=/wp-admin/async-upload.php&reauth=1
我已经尝试在我的主题函数.php中添加各种权限级别,但仍然出现相同的错误:
###ROLE FIX FOR UPLOAD FILES
if ( current_user_can('subscriber') && !current_user_can('upload_files') )
add_action('init', 'allow_subscriber_uploads');
function allow_subscriber_uploads() {
$new_role = get_role('subscriber');
$new_role->add_cap('upload_files');
}
我在媒体上传屏幕上看到的只是这个错误:An error occurred in the upload. Please try again later.
任何帮助或提示都将不胜感激。
Wordpress网站版本为:4.5.3
这是由于某些插件冲突,而不是由于角色=subscriber
的权限问题。
我还添加了members
插件,之后问题被自动修复。
我仍然不清楚这个问题是如何解决的,但添加成员插件似乎有所帮助。