Php 将plupload集成到我的媒体插件
我使用buddypress activity plus作为媒体插件。插件使用valums文件上传上传媒体,我想添加plupload并删除valums文件上传。到目前为止我所做的: 删除此部分Php 将plupload集成到我的媒体插件,php,wordpress,file-upload,image-uploading,plupload,Php,Wordpress,File Upload,Image Uploading,Plupload,我使用buddypress activity plus作为媒体插件。插件使用valums文件上传上传媒体,我想添加plupload并删除valums文件上传。到目前为止我所做的: 删除此部分 var uploader = new qq.FileUploader({ "element": $('#med_tmp_photo')[0], //"listElement": $('#med_tmp_photo_list')[0], "allowedExte
var uploader = new qq.FileUploader({
"element": $('#med_tmp_photo')[0],
//"listElement": $('#med_tmp_photo_list')[0],
"allowedExtensions": ['jpg', 'jpeg', 'png', 'gif'],
//"action": ajaxurl,
"params": {
"action": "med_preview_photo"
},
"onComplete": createPhotoPreview,
template: '<div class="qq-uploader">' +
'<div class="qq-upload-drop-area"><span>' + broadcast.drop_files + '</span></div>' +
'<div class="qq-upload-button">' + broadcast.upload_file + '</div>' +
'<ul class="qq-upload-list">' +
'</div>'
});
并将文件_uploader.php更改为:
class plupload_1 {
/**
* Save the file to the specified path
* @return boolean TRUE on success
*/
function save($path) {
$input = fopen("php://input", "r");
$temp = tmpfile();
$realSize = stream_copy_to_stream($input, $temp);
fclose($input);
$target = fopen($path, "w");
fseek($temp, 0, SEEK_SET);
stream_copy_to_stream($temp, $target);
fclose($target);
return true;
}
}
/**
* Handle file uploads via regular form post (uses the $_FILES array)
*/
class plupload_2 {
function __construct(){
$this->file = new plupload_1();
}
最后更改了“class\u bpfb\u binder.php”中的“ajax\u预览\u照片”
由此,
function ajax_preview_photo () {
$dir = BPFB_PLUGIN_BASE_DIR . '/img/';
require_once(BPFB_PLUGIN_BASE_DIR . '/lib/external/file_uploader.php');
$uploader = new qqFileUploader(array('jpg', 'jpeg', 'png', 'gif'));
$result = $uploader->handleUpload(BPFB_TEMP_IMAGE_DIR);
//header('Content-type: application/json'); // For some reason, IE doesn't like this. Skip.
echo htmlspecialchars(json_encode($result), ENT_NOQUOTES);
exit();
}
对此,
function ajax_preview_photo () {
//$dir = BPFB_PLUGIN_BASE_DIR . '/img/';
require_once(BPFB_PLUGIN_BASE_DIR . '/lib/external/file_uploader.php');
$uploader = new plupload_2();
$result = $uploader->PlupLoad(BPFB_TEMP_IMAGE_DIR);
//header('Content-type: application/json'); // For some reason, IE doesn't like this. Skip.
echo htmlspecialchars(json_encode($result), ENT_NOQUOTES);
exit();
}
但我不确定我所做的是正确的,或者如果有不同的方法,任何帮助都将被感激
谢谢你如果你不介意,请使用这个plupload代码。我总是在wordpress插件中使用这段代码,这是非常简单和干净的代码。
尝试一下,如果有任何疑问,请告诉我。谢谢您的回答,我希望这是我的用户上传图像的前端页面。看起来你提供的是wordpress后端。我说的对吗?@Joey 1984是的,但我认为你也可以在前端使用它。问题仍然存在,如何将它集成到activity plus插件中,因为插件必须将该文件发布到activity stream中
function ajax_preview_photo () {
//$dir = BPFB_PLUGIN_BASE_DIR . '/img/';
require_once(BPFB_PLUGIN_BASE_DIR . '/lib/external/file_uploader.php');
$uploader = new plupload_2();
$result = $uploader->PlupLoad(BPFB_TEMP_IMAGE_DIR);
//header('Content-type: application/json'); // For some reason, IE doesn't like this. Skip.
echo htmlspecialchars(json_encode($result), ENT_NOQUOTES);
exit();
}