您好我的functions.php中有这个代码,当编辑器查看媒体库时它运行良好:http://example.com/wp-admin/upload.php
add_action('pre_get_posts','users_own_attachments');
function users_own_attachments( $wp_query_obj ) {
global $current_user, $pagenow;
if( !is_a( $current_user, 'WP_User') )
return;
if ( 'upload.php' != $pagenow )
return;
if( !current_user_can('delete_users') )
$wp_query_obj->set('author', $current_user->ID );
return;
}
上述代码将阻止其他编辑者查看媒体库中其他编辑者上传的图像。只有管理员才能看到上传的所有图片。编辑只能看到他们自己上传的图像(而不是其他人)。
现在问题是,在创建或编辑帖子时,Wordpress有一个“添加媒体”按钮,允许用户将图像上传到他们的图库。但是当用户通过“添加媒体”弹出窗口上传时,上面的代码不起作用。他们仍然可以看到其他编辑上传的图片。
如何修改上述代码,以便在用户通过“添加媒体”弹出窗口而不是媒体库查看图像时仍然可以使用?非常感谢你的帮助。
答案 0 :(得分:0)
策略是添加一个条件标签,用于检查用户是否正在查看添加媒体弹出窗口。