当前位置:首页 > CMS教程 > WordPress > 列表

WordPress 多媒体库只显示当前用户上传的文件

发布:smiling 来源: PHP粉丝网  添加日期:2014-03-22 10:23:26 浏览: 评论:0 

在 wordpress 的 media library 里只显示当前用户上传的文件,也试用于 acf_form,代码如下:

  1. //wordpress show only media user has uploaded 
  2. add_action('pre_get_posts','ml_restrict_media_library'); 
  3.  
  4. function ml_restrict_media_library( $wp_query_obj ) { 
  5.     global $current_user$pagenow
  6.     if( !is_a$current_user'WP_User') ) 
  7.         return
  8.     if'admin-ajax.php' != $pagenow || $_REQUEST['action'] != 'query-attachments' ) 
  9.         return
  10.     if( !current_user_can('manage_media_library') ) 
  11.         $wp_query_obj->set('author'$current_user->ID ); 
  12.         return

is_a() 函数已废弃,自 PHP 5 起使用 instanceof 类型运算符,上例在 PHP 5 中会是这样,代码如下:

  1. //wordpress show only media user has uploaded 
  2. add_action('pre_get_posts','ml_restrict_media_library'); 
  3.  
  4. function ml_restrict_media_library( $wp_query_obj ) { 
  5.     global $current_user$pagenow
  6.     //if( !is_a( $current_user, 'WP_User') ) 
  7.     if ($current_user instanceof WP_User) 
  8.         return
  9.     if ( 'admin-ajax.php' != $pagenow || $_REQUEST['action'] != 'query-attachments' ) 
  10.         return
  11.     if ( !current_user_can('manage_media_library') ) 
  12.         $wp_query_obj->set('author'$current_user->ID ); 
  13.         return

Tags: WordPress 多媒体 文件 用户

分享到: