我需要开发一个前端拖放插件。首先我收集html5拖放代码。
以zip格式下载源代码 - https://github.com/Mashpy/html5-drag-and-drop-upload/archive/master.zip
将文件放入localhost并打开。如果您上传文件,它将在“uploads”文件夹中上传。因为我把代码放在“/js/mashpy.js”中,这次“upload.php”文件将被加载,它将发送“uploads”文件夹中的文件。
这意味着这个过程就像这样 - index.html - js / mashpy.js - upload.php - 将文件发送到“uploads” - dump.php将显示成功上传的结果。
现在我必须开发一个前端拖放插件。但我不知道如何在wordpress媒体库中上传文件。在这个源代码中,upload.php可以将文件发送到“uploads”文件夹。但是wordpress发生了什么?如何将文件发送到wordpress媒体库?
答案 0 :(得分:0)
您无法简单地将文件上传到wp-content/uploads/
。它们不会出现在媒体库中。您需要使用WordPress函数media_handle_upload($file,$post_id)
,将0
作为帖子ID传递(因此,它不附加到任何帖子/页面)。
类似的东西:
if ($_FILES) {
foreach ($_FILES as $file => $array) {
if ($_FILES[$file]['error'] !== UPLOAD_ERR_OK) {
return "upload error : " . $_FILES[$file]['error'];
}
$attach_id = media_handle_upload( $file, 0 );
}
}
您可以研究这个插件,看看它是如何做到的:Add From Server。并且还研究了WordPress Answers for examples这个函数的用法。