Wordpress自定义角色无法使用前端媒体

时间:2017-09-27 15:36:50

标签: wordpress

我创建了一个带有插件的自定义模板,允许用户(角色:客户)从前端上传图片,但是当我尝试上传图片时,它说“#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);

我已设置已授予'上传,编辑帖子'使用用户角色编辑器插件的角色权限。

谢谢!

1 个答案:

答案 0 :(得分:0)

我解决了安装https://wordpress.org/plugins/user-role-editor/的问题, 然后我意识到我的CPT(我创建供此Role(Customer)修改的CPT)具有页面功能。我修改了插件选项。

希望对您有帮助。