Image uploader with “Set Featured Image” link on front end

I am loading upload-media.php file using thickbox on front end where user can upload images to the post.

Question: How to I trigger the upload-media.php so the link “set featured image” shows up on image manager, just like we see when we click on “set featured image” link on backend.

Featured image

Here is the code for the thickbox:

jQuery('.upload_media_button').live('click', function() {
            current_item = jQuery(this);
             container = "."+current_item.attr('rel');
             var request = url.media_upload+'?type=image&TB_iframe=true';
             //alert(request);
             tb_show('Image Manager', request);
             return false;
        });

        window.send_to_editor = function(html) {
             var img_tag = jQuery('img',html);
             //var attachment_id = jQuery('img',html).attr('class').replace(/[^0-9]/g, '');
             current_item.siblings(container).prepend(img_tag).css("height: auto");
             tb_remove();
        }

I know I can take the attachment ID and set the featured image after form submission but that’s the Plan B 😉

1 Answer
1

To get the "Use as featured Image" link you have to pass post_id to the media-upload.php file with the url so the request will be changed to:

var post_id = 234 // retrive the post id via php
var request = url.media_upload+'?post_id='+post_id+'type=image&TB_iframe=true';

Make sure you add the post_id very first of the url. It didn’t worked for me when i added the post_id to the last of the url.

UPDATE: Some javascript handling will be needed for the ajax response. Still working on to figure out that part. I will update my answer if i can figure it out.

Leave a Comment