Intereting Posts
Ссылка FROM attachment на полный пост и получить значения настраиваемых полей на странице вложений? проблема с has_post_thumpnail в цикле foreach Как установить расширение ffmpeg для php 5.6.25 для плагина vp video posts? Некоторые из моих пользовательских таксономий не отображаются, но все еще учитываются при создании WPMU TCPDF get_post_meta вне цикла Проблемы с Ubuntu 12.04, Nginx и MySQL с помощью базы данных WordPress Как вы используете класс загрузчика плагинов-плагинов для подбора действий и фильтров? Элементы меню внезапно отображаются на всей странице Помощь с кодом Wp + Mixitup Загружает сообщения разного года через вызов AJAX как настроить субдомены для страниц? Как отобразить список отдельных продуктов категории на странице магазина? как сделать строку запроса URL-ссылки захватить или загрузить текст по запросу Отфильтровать собственный тип комментариев из «Управление комментариями и тире»

Получить URL-адрес эскиза из медиа-загрузчика

Я хочу выбрать изображение из медиа-загрузчика WordPress 3.5. Я могу получить URL-адрес изображения со следующим кодом, но он получает изображение полного размера. Я хочу получить URL-адрес эскиза изображений, как я могу это получить?

var custom_uploader; $('.upload-image').click(function(e) { e.preventDefault(); if (custom_uploader) { custom_uploader.open(); return; } custom_uploader = wp.media.frames.file_frame = wp.media({ title: 'Choose Image', button: { text: 'Choose Image' }, multiple: false }); //When a file is selected, grab the URL custom_uploader.on('select', function() { attachment = custom_uploader.state().get('selection').first().toJSON(); var abc = attachment.url; //this is full image url. alert (abc); }); custom_uploader.open(); }); 

Solutions Collecting From Web of "Получить URL-адрес эскиза из медиа-загрузчика"

Вы можете отлаживать результат вложения:

 console.log(attachment); 

и если доступный размер эскиза вы можете получить, используя:

  var thumb = attachment.sizes.thumbnail.url; alert(thumb); 

Нашел этот вопрос, выполнив мои собственные исследования, и в итоге разработал более богатое решение, которое, как я думал, может быть ценным.

Если вы хотите узнать URL-адрес выбранного медиафайла, следующий код (полный код jQuery ниже) сделает это для вас:

 jQuery(function($) { // Bind to my upload butto $(document).on('click', 'a.custom-media-upload', function() { customUpload($(this)); return false; }); function customUpload(el) { formfield = $(el); custom_media = true; var _orig_send_attachment = wp.media.editor.send.attachment; wp.media.editor.send.attachment = function(props, attachment) { if ( custom_media ) { formfield = renderUpload(formfield, attachment, props); } else { return _orig_send_attachment.apply( this, [props, attachment] ); } } wp.media.editor.open(1); } function renderUpload(field, attachment, props) { // This gets the full-sized image url var src = attachment.url; // Get the size selected by the user var size = props.size; // Or, if you'd rather, you can set the size you want to get: // var size = 'thumbnail'; // or 'full' or 'medium' or 'large'... // If the media supports the selected size, get it if (attachment.sizes[size]) { src = attachment.sizes[size].url; } // Do what you want with src here.... } }); 

Вам нужно будет позвонить на сервер, чтобы запустить некоторый PHP.

 $thumb_src = wp_get_attachment_image_src( $id, 'thumbnail' ); 

Где $ id – идентификатор вложения

attachment.attributes.id в вашей функции select_uploader select даст вам значение. Вы можете отправить это обратно с помощью ajax-вызова и получить эскиз эскиза таким образом.