The media_upload_form WordPress PHP function outputs the legacy media upload form.
Usage
media_upload_form($errors);
Parameters
- $errors (array) – Optional. Default: null. An array of errors that may occur during the media upload process.
More information
See WordPress Developer Resources: media_upload_form
Examples
Basic usage of media_upload_form
Display the media upload form with no errors.
media_upload_form();
Displaying the media upload form with an error message
Display the media upload form with an error message.
// Define an error array $errors = array('upload_error' => 'An error occurred during upload.'); // Display the media upload form with errors media_upload_form($errors);
Displaying the media upload form within a custom admin page
Create a custom admin page with a media upload form.
// Add custom admin page add_action('admin_menu', 'my_custom_admin_page'); function my_custom_admin_page() { add_menu_page('Custom Admin Page', 'Custom Page', 'manage_options', 'custom_page_slug', 'custom_admin_page_content'); } // Display the media upload form in the custom admin page function custom_admin_page_content() { echo '<h2>Upload Media</h2>'; media_upload_form(); }
Using media_upload_form in a custom post type
Add a media upload form to a custom post type.
// Register custom post type add_action('init', 'create_custom_post_type'); function create_custom_post_type() { register_post_type('custom_post', array( 'labels' => array('name' => 'Custom Post'), 'public' => true, 'supports' => array('title', 'editor', 'thumbnail') )); } // Add media upload form to custom post type add_action('add_meta_boxes', 'add_custom_post_meta_box'); function add_custom_post_meta_box() { add_meta_box('custom_post_media_upload', 'Media Upload', 'custom_post_media_upload', 'custom_post', 'side', 'low'); } function custom_post_media_upload() { media_upload_form(); }
Customizing the media_upload_form output using CSS
Apply custom CSS to style the media upload form.
// Add the media upload form function my_media_upload_form() { media_upload_form(); } // Enqueue custom CSS add_action('wp_enqueue_scripts', 'enqueue_custom_css'); function enqueue_custom_css() { wp_enqueue_style('custom-css', get_template_directory_uri() . '/css/custom.css'); }
In your custom.css
file, add the desired styles for the media upload form:
.media-upload-form { background-color: #f5f5f5; padding: 20px; border: 1px solid #ccc; border-radius: 5px; }