@alexsandr_s

Как получить attachment.url'ы двух или более выделенных изображений?

Здравствуйте, пробую сделать слайдер с помощью метабокса с использованием Media Uploader
Выделяю допустим два изображения, а выводит урл только первого изображения
в чем может быть проблема?

Использую этот код:

// Uploading files
var file_frame;

  jQuery('#upload').live('click', function( event ){

    event.preventDefault();

    // If the media frame already exists, reopen it.
    if ( file_frame ) {
      file_frame.open();
      return;
    }

    // Create the media frame.
    file_frame = wp.media.frames.file_frame = wp.media({
      title: jQuery( this ).data( 'uploader_title' ),
      button: {
        text: jQuery( this ).data( 'uploader_button_text' ),
      },
      multiple: true  // Set to true to allow multiple files to be selected
    });

     // When an image is selected, run a callback.
  file_frame.on( 'select', function() {
 
    var selection = file_frame.state().get('selection');
 
    selection.map( function( attachment ) {
 
      attachment = attachment.toJSON();
 
      // Do something with attachment.id and/or attachment.url here
 jQuery( '#url' ).val(attachment.url);
    });
  });
  });

<input type='button' id='upload' value='Upload' />
<input type='text' id='url' value='' />
  • Вопрос задан
  • 2501 просмотр
Решения вопроса 1
@alexsandr_s Автор вопроса
решил, нужно было обернуть в
jQuery(document).ready(function($){
});

Полный код
jQuery(document).ready(function($){
var file_frame;
$('#upload').live('click', function(event) {
    event.preventDefault();
    
    // If the media frame already exists, reopen it.

    if (file_frame) {
        file_frame.open();
        return;
    }
    // Create the media frame.
    file_frame = wp.media.frames.file_frame = wp.media({
        title: 'Choose Image',
        button: {
            text: 'Choose Image'
        },
        multiple: true
    });
    // When an image is selected, run a callback.
    file_frame.on('select', function() {
        var selection = file_frame.state().get('selection');
        selection.map( function( attachment ) {
        attachment = attachment.toJSON();
         // Do something with attachment.id and/or attachment.url here
        $("#featured-footer-image-container").after("<img src=" +attachment.url+" width='100' height='100'>");
        });
    });
    file_frame.open();
});
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы