摘要:对于多用户的wwordpress程序站点,如果媒体库内显示所有用户上传的图片或是图像,会造成信息维乱,而且会出现加载更新…
对于多用户的wwordpress程序站点,如果媒体库内显示所有用户上传的图片或是图像,会造成信息维乱,而且会出现加载更新时的图片调用错误等问题,那我们可以通过以下代码来调整到wordpress默认只显示当前用户上传的媒体问题,加一个作者信息的判断,就可以完美实现我们的功能。将以下代码添加到你的wordpress主题文件夹内的核心函数文章function.php内即可。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
/**
* WordPress 多用媒体库只显示用户自己上传的文件
*/
//在文章编辑页面的[添加媒体]只显示用户自己上传的文件
function my_upload_media( $wp_query_obj ) {
global $current_user, $pagenow;
if( !is_a( $current_user, ‘WP_User’) )
return;
if( ‘admin-ajax.php’ != $pagenow || $_REQUEST[‘action’] != ‘query-attachments’ )
return;
if( !current_user_can( ‘manage_options’ ) && !current_user_can(‘manage_media_library’) )
$wp_query_obj->set(‘author’, $current_user->ID );
return;
}
add_action(‘pre_get_posts’,‘my_upload_media’);
//在[媒体库]只显示用户上传的文件
function my_media_library( $wp_query ) {
if ( strpos( $_SERVER[ ‘REQUEST_URI’ ], ‘/wp-admin/upload.php’ ) !== false ) {
if ( !current_user_can( ‘manage_options’ ) && !current_user_can( ‘manage_media_library’ ) ) {
global $current_user;
$wp_query->set( ‘author’, $current_user->id );
}
}
}
add_filter(‘parse_query’, ‘my_media_library’ );
|
来源:http://www.wazhuti.com/1897.html