LoginSignup
0
1

More than 5 years have passed since last update.

メディア選択時に自分の投稿写真だけ表示する

Posted at

メディアメニューの一覧画面での方法は、
 http://liginc.co.jp/programmer/archives/4054
に記載の方法で実現可能。

しかし、投稿画面の「メディアを追加」で開かれる写真選択画面では、どうも上記のブログのfilterでは効かないらしく、他ユーザの画像も表示される。

admin-ajax.phpから動的に取得した一覧が表示されるのだが、おそらくシーケンスがメディアメニューのシーケンスとは少し違うのでしょう。上記のブログで利用しているfilterは効かないらしい。

調べてみると、admin-ajaxでの検索の場合は、"pre_get_posts"に設定するとできるようで。

add_action( "pre_get_posts", "set_ajax_media_query" );

function set_ajax_media_query( $wp_query ) {
    global $current_user;

    if( $wp_query ->query_vars['post_type'] != "attachment" ) {
        return;
    }

    get_currentuserinfo();

    if( $current_user->roles[0] == "administrator" ) {
        return;
    }

    $wp_query->query_vars['author'] = $current_user->ID;
}

こんな感じで。$wp_queryは参照渡しなので、編集した内容はそのまま元の処理の中で使われる。

ただ、検索結果の数などには不整合が起きているので、その辺も含めて本当はなんとかしたいところ。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1