やりたいこと
WordPressについて、寄稿者権限でメディアのアップロードを許可する設定を行なった場合、寄稿者でも画像をアップロードすることができるようになりますが、既にアップロードしてある画像や他の人がアップロードした画像も見ることができてしまいます。他の人がアップロードした画像が悪用されないように、他ユーザがアップロードしたメディアを表示させない方法を記載します。
ちなみに、寄稿者権限でもメディアをアップロードをする方法は下記に記載してありますので、必要な方はご確認ください。
寄稿者権限でもメディアをアップロードをする方法(WordPress)
対応方法
functions.php に下記の処理を追加することで対応可能です。
functions.phpの場所が分からない場合、テーマ配下にあるかと思いますので、
/wp-content/themes/(使っているテーマ)/functions.php を見てみてください。
add_action('pre_get_posts',function($query){
global $current_user;
if(!is_admin()) return $query;
if($current_user->user_level>=5) return $query;
if($query->get('post_type')=='attachment'){
$query->set('author',$current_user->data->ID);
};
return $query;
});