带有自定义上传位置的WordPress元框

时间:2014-07-17 08:17:57

标签: wordpress upload location

我需要一种方法将文件上传到自定义位置,而不是wordpress本身的上传文件夹。 我用谷歌搜索,但可能使用了错误的单词。 有人可以帮我推动正确的方向吗?

请注意,我不要求完整的脚本执行此操作。 我想了解我在做什么,而不仅仅是复制和粘贴: - )

微米。

1 个答案:

答案 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 );
    }
}