新的3.5媒体中的图像上传回调

时间:2013-03-26 作者:fornyhucker

我在我的主题前端使用新的3.5媒体上传程序(基于this 示例)。当您想在\'Select\' 按下按钮:

file_frame.on(\'select\', function() {
    // Get all attachments
    var attachments = file_frame.state().get(\'selection\').toJSON();

    // Do stuff with attachments
});
但如果我想在上传附件后对其进行处理,该怎么办?类似于:

file_frame.on(\'upload\', function() {
    // Do stuff with attachments
});
我没有发现任何有用的东西\'wp-includes/js/media-models.js\'\'wp-includes/js/media-views.js\'.

我已尝试附加在这些文件中发现的许多事件:

\'add\', \'url\', \'select\', \'ready\', \'escapeHandler\', \'keydown\', \'attach\', \'open\', \'close\', \'escape\', \'recordTab\', \'updateIndex\', \'activate\', \'dismiss\', \'remove\', \'reset\', \'uploading\', \'deactivate\', \'create\', \'render\', \'change:content\', \'scan\', \'prepare\', \'content:render:upload\', \'content:render\', \'content\', \'updateIndex\', \'recordTab\', \'change:uploading\', \'finish\', \'done\', \'upload\', \'uploaded\', \'save\', \'saved\',\'change:compat\', \'compat\'
但所有这些事件都不是在我需要的时候发生的。

谢谢

2 个回复
SO网友:Jörn Lund

有一个FileUploaded 正在中激发的事件wp-includes/js/plupload/wp-plupload.js.

或者(可能是更好的方法)您可能需要扩展wp。使用您自己的成功回调上载程序。

(function($){

    $.extend( wp.Uploader.prototype, {
        success : function( file_attachment ){
            console.log( file_attachment );
        }
    });
})(jQuery);

SO网友:Svetoslav Luchezarniy

约恩·隆德,你是个巫师!你的wp。上载程序。原型工作得很好!我一直在寻找很长一段时间,如何在文件加载到wp媒体框后更新媒体库。向你致敬!这是我的代码:

$.extend(wp.Uploader.prototype,{
    success: function(file_attachment){
        console.log(file_attachment);
        if(wp.media.frame.content.get() !== null){
            setTimeout(function(){
                wp.media.frame.content.get().collection.props.set({ignore: (+ new Date())});
            },100);
        }
    }
});

结束