简体   繁体   中英

Get URL of freshly uploaded image from WP3.5 Media Uploader

I'm having issues using freshly uploaded images from the Media Uploader.

I'm using a custom uploader frame and some simple jQuery as seen here .

As you can see on line 49 I wish to grab the URLs of thumbnail sizes for selected images and display them on the page after selection.

The code works fine... for previously uploaded files selected from the Media Library.

However the attachment object (see console log on line 52) is returning an empty object with undefined sizes for freshly uploaded files. If I click around, closing and reopening the Media Upload frame I can get it to work, but for the purpose of a functional app, it's a failure.

I recorded this video to help understand what's going on .

I sincerely hope someone has at least a pointer to give me on this problem, because I've been trying to solve it for a while now without success.

So turns out the media uploader throws an empty object into the list when uploading new files... an issue I had encountered and fixed in the code right above, and was the cause of problems for this purpose as well.

I was able to solve my problem by adding an if statement to exclude that empty object:

// Show Thumbs
var attachment_thumbs = selection.map( function( attachment ) {
  attachment = attachment.toJSON();
  if( attachment.id != '' ) { return '<img src="' + attachment.sizes.thumbnail.url + '" id="id-' + attachment.id + '" />'; }
}).join(' ');
$('#images-feedback').show();
$('#thumbs').html(attachment_thumbs);

Although this solves my problem, I am still VERY curious as to why the media uploader includes an empty object before freshly uploaded media...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM