2017-08-04 172 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); 
} 
相關問題