我需要一种方法将文件上传到自定义位置,而不是wordpress本身的上传文件夹。 我用谷歌搜索,但可能使用了错误的单词。 有人可以帮我推动正确的方向吗?
请注意,我不要求完整的脚本执行此操作。 我想了解我在做什么,而不仅仅是复制和粘贴: - )
微米。
答案 0 :(得分:0)
您可以写入Web服务器进程具有写入权限的任何位置。如果您要将上传的文件保存到/wp-content/uploads
下的其他路径,则可以使用wp_upload_dir()
功能。
if (isset($_FILES['file']) && (!empty($_FILES['file']['tmp_name']))){
if ($_FILES['file']['error'] == UPLOAD_ERR_OK) { // no errors
// get upload directory
$upload_dir = wp_upload_dir();
// append the custom dir (and trailing slash!)
$my_upload_dir = $upload_dir . "my-dir/";
// get the filename of the upload (you might want to filter this)
$filename = $_FILES['file']['name'];
// move the file to your custom directory location and change permissions
@move_uploaded_file( $_FILES['file']['tmp_name'], $my_upload_dir . $filename );
@chmod( $my_upload_dir . $filename, 0644 );
}
}