wordpress插件

时间:2016-08-09 08:33:07

标签: wordpress file plugins download

我正在尝试为自定义wordpress插件创建功能,当用户点击下载按钮时,应下载与该帖子相关的目录中的相应文件。

我不希望从URL直接访问该文件,只希望授权用户可以下载文件。

class DownloadM{
function __construct(){

}
function setDownload($file){
    //$file = ROOT_DIR_PATH."wp-content/uploads/2016/07/PDF.zip";
    echo "<a href='".$file."'>Click here to download</a>";
    ob_start();

    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-type: application/octet-stream");
    header("Content-Disposition: attachment; filename=PDF.zip");
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".filesize($file));
    flush();
    ob_clean();
    readfile($file);
} 
}

如果我将链接放在href标记中或直接从网址访问该文件,则文件已正确下载。

但是当我把文件放在标题中以自动下载时它不起作用

1 个答案:

答案 0 :(得分:0)

简单的解决方案:

header("Content-Type: application/force-download");