I have this jQuery code in my plugin to display a media box preferably to upload an image or to pick an image from the media gallery:

jQuery(document).ready(function() {

$('#upload_image_button').click(function(e) {


    //If the uploader object has already been created, reopen the dialog
    if (custom_uploader) {

    //Extend the wp.media object
    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 and set it as the text field's value
    custom_uploader.on('select', function() {
        attachment = custom_uploader.state().get('selection').first().toJSON();

    //Open the uploader dialog



and thee are the following elements in my plugin option that binds with that jQuery code:

<input class="nput" id="upload_image" type="text" name="the_box[authorpic]" value="<?php echo $options['authorpic']; ?>" />&nbsp;<input class="button-primary" id="upload_image_button" type="button" value="Pick From Gallery" />

but now it doesn't work, I mean nothing happens when I click or press the button now as it should display the media box just like before (I'm using now WordPress 3.8.1) and I'm sure I load up the jQuery scripts (I tested it).

What could cause this not to work any more? Any ideas, recommendations and suggestions will be greatly appreciated. Thanks in advance.

  • Please start following up on your old questions.
    – kaiser
    Apr 8, 2014 at 22:35

1 Answer 1


Try removing (function($){ from the beginning and })(jQuery); from the end. And change jQuery(document).ready(function() to jQuery(document).ready(function($)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.