WordPress 3.5 最近发布了,我通过thickbox 使用了WordPress 媒体上传系统,并window.send_to_editor
在我的WordPress 主题中使用了一些选项(背景、徽标等...)。
但正如您所知,WordPress 已经集成了一个新的媒体管理器,我想使用这个新功能将图像/文件作为自定义字段上传。所以我花了一上午的时间来寻找一种方法来获得想要的结果。
我发现了这个解决方案,它对你们中的一些人很有用。感谢您对代码或您想到的任何改进提供反馈!
HTML 示例:
<a href="#" class="custom_media_upload">Upload</a>
<img class="custom_media_image" src="" />
<input class="custom_media_url" type="text" name="attachment_url" value="">
<input class="custom_media_id" type="text" name="attachment_id" value="">
jQuery代码:
$('.custom_media_upload').click(function() {
var send_attachment_bkp = wp.media.editor.send.attachment;
wp.media.editor.send.attachment = function(props, attachment) {
$('.custom_media_image').attr('src', attachment.url);
$('.custom_media_url').val(attachment.url);
$('.custom_media_id').val(attachment.id);
wp.media.editor.send.attachment = send_attachment_bkp;
}
wp.media.editor.open();
return false;
});
如果您想查看attachment
变量中包含的每个设置,您可以执行 aconsole.log(attachment)
或alert(attachment)
.