Wordpress: Upload Image in Admin Options Page Wordpress: Upload Image in Admin Options Page wordpress wordpress

Wordpress: Upload Image in Admin Options Page


Add this code to your global custom option function.

if(function_exists( 'wp_enqueue_media' )){    wp_enqueue_media();}else{    wp_enqueue_style('thickbox');    wp_enqueue_script('media-upload');    wp_enqueue_script('thickbox');}<p><strong>Header Logo Image URL:</strong><br />                <img class="header_logo" src="<?php echo get_option('header_logo'); ?>" height="100" width="100"/>                <input class="header_logo_url" type="text" name="header_logo" size="60" value="<?php echo get_option('header_logo'); ?>">                <a href="#" class="header_logo_upload">Upload</a></p>    <script>    jQuery(document).ready(function($) {        $('.header_logo_upload').click(function(e) {            e.preventDefault();            var custom_uploader = wp.media({                title: 'Custom Image',                button: {                    text: 'Upload Image'                },                multiple: false  // Set this to true to allow multiple files to be selected            })            .on('select', function() {                var attachment = custom_uploader.state().get('selection').first().toJSON();                $('.header_logo').attr('src', attachment.url);                $('.header_logo_url').val(attachment.url);            })            .open();        });    });</script>

More info

or

Media uploader in theme and plugin

enter image description here


You can use the inbuilt function of wordpress

<?php wp_handle_upload( $file, $overrides, $time ); ?>

This will automatically move the file to the uploads folder

Or

You can write your own PHP function.

Additional Details can be found here -> Wordpress File Upload