在注册时设置用户角色,以便可以将文件上传到自己的媒体库区域

时间:2015-04-14 作者:lea

我需要我的用户能够将文件上载到媒体库,因此需要在注册时以某种方式自动将用户角色设置为默认“订阅者”以外的其他角色。

我知道,在“设置”>“常规”中,您可以设置“新用户默认角色”,但如果我将其更改为允许用户上载的角色,则可以访问主媒体库。如果他们可以上传到自己的媒体库,那就太好了,但我不希望每个人都看到媒体库中的其他人的文件。

我正在使用Buddypress,但找不到任何关于此的文档,因此安装了Members插件以查看这是否有帮助,但我仍在努力找出这将如何实现。

任何帮助都将不胜感激。

2 个回复
最合适的回答,由SO网友:lea 整理而成

我最后使用了下面的代码。希望有人觉得这有用。

/* Display only user-uploaded files to each user in Media Library for file upload form*/

function user_restrict_media_library( $wp_query_obj ) {
    global $current_user, $pagenow;
    if( !is_a( $current_user, \'WP_User\') )
        return;
    if( \'admin-ajax.php\' != $pagenow || $_REQUEST[\'action\'] != \'query-attachments\' )
        return;
    if( !current_user_can(\'manage_media_library\') )
        $wp_query_obj->set(\'author\', $current_user->ID );
    return;
}
add_action(\'pre_get_posts\',\'user_restrict_media_library\');

SO网友:websupporter

你可能只想去Settings > General. 在这里,您可以选择用户注册后获得的标准角色。

Select standard user role in WordPress

结束