jQuery(document).ready(function($) { "use strict"; $('.btn_load_invitation_image').unbind('click').bind('click', function(event) { event.preventDefault(); var current_element = this; var uploader = wp.media( { title : 'Add invitation image', button : { text : 'Add', }, multiple : false }) .on('select', function() { var selection = uploader.state().get('selection'); var attachements = []; selection.map(function(attachement) { attachement = attachement.toJSON(); attachements.push([attachement.id, attachement.url, attachement.caption]); set_element_image_data(attachement.url, current_element, attachement.width); }) }) .open(); }); function set_element_image_data(url, current_element, width) { $(current_element).parent().find('input[name="datainv[invitation_image]"]').val(url); } });