0

嗨,我的 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 有一个“添加媒体”按钮,允许用户将图像上传到他们的画廊。但是当用户通过“添加媒体”弹出窗口上传时,上面的代码不起作用。他们仍然可以看到其他编辑上传的图片。

如何修改上述代码,使其在用户通过“添加媒体”弹出窗口而不是媒体库查看图像时仍然有效?非常感谢你的帮助。

4

1 回答 1

0

我在这里有我的答案:https ://wordpress.stackexchange.com/questions/78084/prevent-other-editors-from-viewing-images-of-other-editors-in-add-media-popup

该策略是添加一个条件标签,该标签将检查用户是否正在查看添加媒体弹出窗口。

于 2013-01-05T05:02:48.103 回答