it-swarm.com.de

Abrufen aller URLs hochgeladener Bilder mithilfe des Medien-Uploaders

Ich muss WP Media Uploader verwenden, um mehrere Bilder in mein Plugin hochzuladen. Ich habe diesen Code gefunden, der für ein einzelnes Bild gut funktioniert. Ich habe versucht, multiple: false in true zu ändern, wodurch ich im Medien-Uploader mehrere Bilder auswählen konnte. Mein Problem ist, dass ich nicht weiß, wie ich die URLs aller hochgeladenen Bilder abrufen soll, nicht nur eines, wie es im angehängten Code steht. Ich habe versucht, var uploaded_image = image.state().get('selection').first(); in var uploaded_image = image.state().get('selection') zu ändern und dann mit diesem Code über das Array zu iterieren, hatte aber keinen Erfolg.

var uploaded_image = image.state().get('selection').first();
            jQuery.each(uploaded_image, function (i) {
                console.log(uploaded_image[i].toJSON().url);
            });

Originalcode:

jQuery(document).ready(function($){
$('#upload-btn').click(function(e) {
    e.preventDefault();
    var image = wp.media({
        title: 'Nahranie obsahu',
        // mutiple: true if you want to upload multiple files at once
        multiple: false
    }).open()
        .on('select', function(e){
            // This will return the selected image from the Media Uploader, the result is an object
            var uploaded_image = image.state().get('selection').first();

            // We convert uploaded_image to a JSON object to make accessing it easier
            // Output to the console uploaded_image
           // console.log(uploaded_image);
            var image_url = uploaded_image.toJSON().url;
            // Let's assign the url value to the input field
            $('#image_url').val(image_url);
        });
});
});
1
martin49

Funktioniert mit dem Code dieser Frage? https://stackoverflow.com/questions/14847668/get-url-of-freshly-uploaded-image-from-wp3-5-media-uploader

Vielleicht findet es jemand nützlich. Dieser Code protokolliert die URL jedes frisch aktualisierten Bildes in der Konsole.

jQuery(document).ready(function($){
$('#upload-btn').click(function(e) {
    e.preventDefault();
    var image = wp.media({
        title: 'Nahranie obsahu',
        // mutiple: true if you want to upload multiple files at once
        multiple: true
    }).open()
        .on('select', function(e){
            // This will return the selected image from the Media Uploader, the result is an object
            var uploaded_images = image.state().get('selection');

            var attachment_ids = uploaded_image.map( function( attachment ) {
                attachment = attachment.toJSON();
                console.log(attachment.url);
            }).join();

            // We convert uploaded_image to a JSON object to make accessing it easier
            // Output to the console uploaded_image
           // console.log(uploaded_image);
            var image_url = uploaded_image.toJSON().url;
            // Let's assign the url value to the input field
            $('#image_url').val(image_url);
        });
});
});
1
martin49