我正在寻找关于如何只向特定用户显示特定媒体的想法。
我已为要附加特定媒体文件的角色创建了新角色和功能。因此,新角色中的人员只能查看分配给它的媒体。
最后,我正在创建的是一个页面,人们将登录到该页面以下载文档。我希望动态地拉入这些文档,但如果我不能弄清楚上面我要求做什么,我就会将文档硬编码到页面上。
发布于 2012-08-07 08:02:30
Well...as就只向特定用户显示特定媒体而言...
我们可以检查他们在哪里查看他们的媒体,如果你只是在谈论WP-Admin界面中的默认媒体库,那么我们可以检查URL,看看他们是否在媒体库页面上。
我们(很可能)会把这段代码放在主题的functions.php文件中,或者放在插件中,具体取决于你的设计。
//we need access to the $wp_query;
global $wp_query;
//now we build our function, we need to pass $wp_query into it
function manage_user_media($wp_query){
//we check the location of the window
if(strpos($_SERVER['REQUEST_URI'], '/wp-admin/upload.php') !== false ||
strops($_SERVER['REQUEST_URI'], '/wp-admin/media-upload.php') !== false):
//check if the logged in user has a capability of say...a level 5 user
if(!current_user_can('level_5')):
//this user does not have the capabilities of a level 5 user.
//hijack the 'author' query var, so we can set it to the ID of our user
$wp_query->set('author', get_current_user_id());
endif;
endif;
}如果是Wordpress User Levels are confusing to you, have a look at the Codex for comparison。
这意味着,超过5级用户的任何人都可以查看[ALL]媒体元素,而低于5级用户的任何人只能查看[HIS或HER]媒体元素。
https://stackoverflow.com/questions/11834166
复制相似问题