我创建了一个带有插件的自定义模板,允许用户(角色:客户)从前端上传图片,但是当我尝试上传图片时,它说“#34;您没有权限附加文件到这篇文章。"
我可以通过/ wp-admin>上传图片媒体 - 添加新内容,但不是从前端添加。
这是我的代码;
`function CA_enqueue_scripts() {
wp_enqueue_media();
wp_enqueue_script(
'some-script', get_template_directory_uri() .
'/custom/assets/js/edit_profile.js', array('jquery'), '2017-09-27'
);
}
/**
* This filter insures users only see their own media
*/
function CA_filter_media($query) {
// admins get to see everything
if (!current_user_can('manage_options'))
$query['author'] = get_current_user_id();
return $query;
}
add_action('wp_enqueue_scripts', 'CA_enqueue_scripts');
add_filter('ajax_query_attachments_args', 'CA_filter_media');`
JS:
(function($) {
$(document).ready( function() {
var file_frame;
$( '#upload_image' ).on( 'click', function( event ) {
event.preventDefault();
if ( file_frame ) {
file_frame.open();
return;
}
file_frame = wp.media.frames.file_frame = wp.media({
title: $( this ).data( 'uploader_title' ),
button: {
text: $( this ).data( 'uploader_button_text' ),
},
multiple: false // set this to true for multiple file selection
});
file_frame.on( 'select', function() {
attachment = file_frame.state().get('selection').first().toJSON();
console.log(attachment);
});
file_frame.open();
});
});
})(jQuery);
我已设置已授予'上传,编辑帖子'使用用户角色编辑器插件的角色权限。
谢谢!
答案 0 :(得分:0)
我解决了安装https://wordpress.org/plugins/user-role-editor/的问题, 然后我意识到我的CPT(我创建供此Role(Customer)修改的CPT)具有页面功能。我修改了插件选项。
希望对您有帮助。