2017-08-04 170 views
0

我正在编写一个插件,要求我在上传目录中创建一个子文件夹。Wordpress在插件上传目录中创建子文件夹

这是我迄今为止尝试:

$uploads_dir = trailingslashit(wp_upload_dir(dirname(__FILE__))) . '/evaluation-uploads'; 
wp_mkdir_p($uploads_dir); 

但是当我检查“的wp-content /上传/”子文件夹没有被创建。

+0

检查'$ uploads_dir',运行PHP的用户权限和权限'的wp-content /上传/'目录 – questlooking

回答

1

只要使用这个修改后的版本:

$uploads_dir = trailingslashit(wp_upload_dir()['basedir']) . 'evaluation-uploads'; 
wp_mkdir_p($uploads_dir); 

(只能在PHP工作5.4+)

作出更正:

  • 无需通过dirname(__FILE__)作为参数传递给wp_upload_dir
  • wp_upload_dir返回一个数组,所以你需要访问你需要的路径
  • trailingslashit将已经删除追加了新的尾部斜杠,因此删除它从你的字符串

同时检查文件/目录的用户权限,以确保PHP实际上可以创建一个目录那里。

+1

谢谢!这工作。 ['basedir']之后缺少括号:) –

0

尝试这个 -

$upload = wp_upload_dir(); 
$upload_dir = $upload['basedir']; 
$upload_dir = $upload_dir . '/mypluginfiles'; 
if (! is_dir($upload_dir)) { 
    mkdir($upload_dir, 0700); 
} 
相关问题