Upload de mídia personalizada do Wordpress 3.5 para as opções do seu tema
Wordpress 3.5 foi lançado recentemente, eu usei o sistema Wordpress Media Upload via thickbox ewindow.send_to_editor
para algumas opções no meu tema Wordpress (fundos, logotipos etc ...).
Mas como você sabe que o Wordpress integrou um novo Media Manager, eu queria usar esse novo recurso para fazer upload de imagens / arquivos como campos personalizados. Então eu passei a manhã para encontrar uma maneira de obter o resultado desejado.
Eu encontrei com esta solução, que pode ser útil para alguns de vocês. Obrigado por me dar seu feedback sobre o código ou qualquer melhoria que você tenha em mente!
Amostra 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="">
Código 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;
});
Se você quiser ver todas as configurações contidas noattachment
variável você pode fazer umconsole.log(attachment)
oualert(attachment)
.