WordPress后台只显示当前用户的文章和媒体文件

在我们使用WordPress多用户主题的时候,WordPress后台会默认显示的所有用户文章、媒体文件,这样的情况会导致大家都可以看到其他用户的文章、媒体文件,很不方便管理。

今天主题君分享一篇够让后台后台只显示当前登录用户的文章和媒体文件WordPress教程希望能给大家带来帮助

具体方法是将下面的代码添加到当前主题的 functions.php 文件即可:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//仅显示当前用户的文章、媒体文件

add_action( 'init', 'check_user_role' );
function check_user_role() {
    global $current_user;
    if( $current_user->roles[0] != 'administrator' ) {
        //在[媒体库]只显示用户上传的文件
        add_action('pre_get_posts','MBT_restrict_media_library');
        function MBT_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;
        }
    }
}

注:如果你的WordPress所使用的数据库前缀不是默认的wp_,请将第 5 、6 行中的wp_ 修改为你的WordPress站点的数据库前缀。

未经允许不得转载:主题君 » WordPress后台只显示当前用户的文章和媒体文件
赞(175)

评论抢沙发

评论前必须登录!

账号密码登录