интегрировать plupload в мой медиа-плагин

Я использую buddypress активность плюс как медиа-плагин. Плагин использует valums-file-upload для загрузки медиафайлов, я хочу добавить plupload и удалить valums-file-upload. Что я сделал до сих пор:
Удален этот раздел,

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>'
});

и добавил,

var uploader = new plupload.Uploader({
runtimes : 'html5,flash,silverlight', // Set runtimes, here it     will use HTML5, if not supported will use flash, etc.
browse_button : 'pickfiles', // The id on the select files button
multi_selection: false, // Allow to select one file each time
container : 'uploader', // The id of the upload form container
max_file_size : '800mb', // Maximum file size allowed
url : //'upload.php', // The url to the upload.php file

resize: {width: 300,height: 300,quality: 70},

flash_swf_url : 'js/plupload.flash.swf', // The url to thye flash file
silverlight_xap_url : 'js/plupload.silverlight.xap', // The url to the silverlight file
filters : [ {title : "Image files", extensions : "jpg,gif,png,jpeg"} ] // Filter the files that will be showed on the select files window

});

// RUNTIME
uploader.bind('Init', function(up, params) {
$('#runtime').text(params.runtime);
});

// Start Upload ////////////////////////////////////////////
// When the button with the id "#uploadfiles" is clicked the upload will start
$('#med_submit').click(function(e) {
uploader.start();
e.preventDefault();
});

и изменил file_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();

}

наконец изменил «ajax_preview_photo» в «class_bpfb_binder.php»

из этого,

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();
}

но я не уверен, что то, что я делаю, правильно, или если есть другой подход, любая помощь будет оценена.

Благодарю вас

1

Решение

Если вы не возражаете, пожалуйста, используйте этот код загрузки. Я всегда использую этот код в плагине WordPress, это очень простой и чистый код.
http://www.krishnakantsharma.com/image-uploads-on-wordpress-admin-screens-using-jquery-and-new-plupload/#.VgIs1fRLjIU

Попробуйте и дайте мне знать, если какой-либо запрос.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]