Php Wordpress-私人上传文件夹
我正在创建一个wp插件,它几乎就像一个crm系统 我希望wordpress后端的注册用户能够上传文件(pdf、doc、png),并将这些文件附加到他们的客户记录中 我了解如何在数据库和如何上传文件等方面做到这一点 我想限制访问文件的管理员或上传用户只。任何公共用户或其他用户都不能访问这些上载的文件 您是否会为非公用文件夹中的每个用户创建一个新的上载文件夹,并仅通过插件以编程方式检查凭据来访问该文件 有没有一种已知的或更好的方法可以做到这一点Php Wordpress-私人上传文件夹,php,wordpress,security,private,Php,Wordpress,Security,Private,我正在创建一个wp插件,它几乎就像一个crm系统 我希望wordpress后端的注册用户能够上传文件(pdf、doc、png),并将这些文件附加到他们的客户记录中 我了解如何在数据库和如何上传文件等方面做到这一点 我想限制访问文件的管理员或上传用户只。任何公共用户或其他用户都不能访问这些上载的文件 您是否会为非公用文件夹中的每个用户创建一个新的上载文件夹,并仅通过插件以编程方式检查凭据来访问该文件 有没有一种已知的或更好的方法可以做到这一点 /* ========================
/* ===============================================
* RESTRICT - SHOW ONLY OWN ATTACHMENTS
=================================================*/
add_filter( 'posts_where', 'o99_attachments_wpquery_where' );
function o99_attachments_wpquery_where( $where ){
global $current_user;
if( is_user_logged_in() ){
// we spreken over een ingelogde user
if( isset( $_POST['action'] ) ){
// library query
if( $_POST['action'] == 'query-attachments' && !current_user_can( 'level_10' ) ){ // o99 add optional user_can. remove if not needed
$where .= ' AND post_author='.$current_user->data->ID;
}
}
}
return $where;
}
注意-这是一个示例,需要根据您的需要进行微调
还要记住,posts\u where
过滤器非常强大,它可以修改查询。如果不需要,请小心使用并拆下滤清器