The media_submitbox_misc_sections WordPress PHP filter allows you to customize the audio and video metadata fields displayed in the publish meta box.
Usage
add_filter('media_submitbox_misc_sections', 'your_custom_function', 10, 2); function your_custom_function($fields, $post) { // your custom code here return $fields; }
Parameters
$fields
(array) – An array of the attachment metadata keys and labels.$post
(WP_Post) – WP_Post object for the current attachment.
More information
See WordPress Developer Resources: media_submitbox_misc_sections
Examples
Add a custom metadata field
Add a custom metadata field called “Director” to the publish meta box.
add_filter('media_submitbox_misc_sections', 'add_director_field', 10, 2); function add_director_field($fields, $post) { $fields['director'] = __('Director', 'text_domain'); return $fields; }
Remove a metadata field
Remove the “Length” metadata field from the publish meta box.
add_filter('media_submitbox_misc_sections', 'remove_length_field', 10, 2); function remove_length_field($fields, $post) { unset($fields['length']); return $fields; }
Change the label of a metadata field
Change the label of the “File Type” metadata field to “Media Type”.
add_filter('media_submitbox_misc_sections', 'change_file_type_label', 10, 2); function change_file_type_label($fields, $post) { $fields['file_type'] = __('Media Type', 'text_domain'); return $fields; }
Add a metadata field conditionally
Add a custom metadata field called “Album” only for audio attachments.
add_filter('media_submitbox_misc_sections', 'add_album_field', 10, 2); function add_album_field($fields, $post) { if (strpos($post->post_mime_type, 'audio/') !== false) { $fields['album'] = __('Album', 'text_domain'); } return $fields; }
Modify multiple metadata fields
Add a custom metadata field called “Producer” and remove the “Dimensions” field.
add_filter('media_submitbox_misc_sections', 'modify_metadata_fields', 10, 2); function modify_metadata_fields($fields, $post) { $fields['producer'] = __('Producer', 'text_domain'); unset($fields['dimensions']); return $fields; }