Title: mime_types
Published: April 25, 2014
Last modified: August 20, 2026

---

# apply_filters( ‘mime_types’, string[] $wp_get_mime_types )

## In this article

 * [Description](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#description)
 * [Parameters](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#parameters)
 * [Source](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#changelog)
 * [User Contributed Notes](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#user-contributed-notes)

[ Back to top](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#wp--skip-link--target)

Filters the list of mime types and file extensions.

## 󠀁[Description](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#description)󠁿

This filter should be used to add, not remove, mime types. To remove mime types,
use the [‘upload_mimes’](https://developer.wordpress.org/reference/hooks/upload_mimes/)
filter.

## 󠀁[Parameters](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#parameters)󠁿

 `$wp_get_mime_types`string[]

Mime types keyed by the file extension regex corresponding to those types.

## 󠀁[Source](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#source)󠁿

    ```php
    return apply_filters(
    	'mime_types',
    	array(
    		// Image formats.
    		'jpg|jpeg|jpe'                 => 'image/jpeg',
    		'gif'                          => 'image/gif',
    		'png'                          => 'image/png',
    		'bmp'                          => 'image/bmp',
    		'tiff|tif'                     => 'image/tiff',
    		'webp'                         => 'image/webp',
    		'avif'                         => 'image/avif',
    		'ico'                          => 'image/x-icon',

    		// TODO: Needs improvement. All images with the following mime types seem to have .heic file extension.
    		'heic'                         => 'image/heic',
    		'heif'                         => 'image/heif',
    		'heics'                        => 'image/heic-sequence',
    		'heifs'                        => 'image/heif-sequence',

    		// Video formats.
    		'asf|asx'                      => 'video/x-ms-asf',
    		'wmv'                          => 'video/x-ms-wmv',
    		'wmx'                          => 'video/x-ms-wmx',
    		'wm'                           => 'video/x-ms-wm',
    		'avi'                          => 'video/avi',
    		'divx'                         => 'video/divx',
    		'flv'                          => 'video/x-flv',
    		'mov|qt'                       => 'video/quicktime',
    		'mpeg|mpg|mpe'                 => 'video/mpeg',
    		'mp4|m4v'                      => 'video/mp4',
    		'ogv'                          => 'video/ogg',
    		'webm'                         => 'video/webm',
    		'mkv'                          => 'video/x-matroska',
    		'3gp|3gpp'                     => 'video/3gpp',  // Can also be audio.
    		'3g2|3gp2'                     => 'video/3gpp2', // Can also be audio.
    		// Text formats.
    		'txt|asc|c|cc|h|srt'           => 'text/plain',
    		'csv'                          => 'text/csv',
    		'tsv'                          => 'text/tab-separated-values',
    		'ics'                          => 'text/calendar',
    		'rtx'                          => 'text/richtext',
    		'css'                          => 'text/css',
    		'htm|html'                     => 'text/html',
    		'vtt'                          => 'text/vtt',
    		'dfxp'                         => 'application/ttaf+xml',
    		// Audio formats.
    		'mp3|m4a|m4b'                  => 'audio/mpeg',
    		'aac'                          => 'audio/aac',
    		'ra|ram'                       => 'audio/x-realaudio',
    		'wav|x-wav'                    => 'audio/wav',
    		'ogg|oga'                      => 'audio/ogg',
    		'flac'                         => 'audio/flac',
    		'mid|midi'                     => 'audio/midi',
    		'wma'                          => 'audio/x-ms-wma',
    		'wax'                          => 'audio/x-ms-wax',
    		'mka'                          => 'audio/x-matroska',
    		// Misc application formats.
    		'rtf'                          => 'application/rtf',
    		'js'                           => 'application/javascript',
    		'pdf'                          => 'application/pdf',
    		'swf'                          => 'application/x-shockwave-flash',
    		'class'                        => 'application/java',
    		'tar'                          => 'application/x-tar',
    		'zip'                          => 'application/zip',
    		'gz|gzip'                      => 'application/x-gzip',
    		'rar'                          => 'application/rar',
    		'7z'                           => 'application/x-7z-compressed',
    		'exe'                          => 'application/x-msdownload',
    		'psd'                          => 'application/octet-stream',
    		'xcf'                          => 'application/octet-stream',
    		// MS Office formats.
    		'doc'                          => 'application/msword',
    		'pot|pps|ppt'                  => 'application/vnd.ms-powerpoint',
    		'wri'                          => 'application/vnd.ms-write',
    		'xla|xls|xlt|xlw'              => 'application/vnd.ms-excel',
    		'mdb'                          => 'application/vnd.ms-access',
    		'mpp'                          => 'application/vnd.ms-project',
    		'docx'                         => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
    		'docm'                         => 'application/vnd.ms-word.document.macroEnabled.12',
    		'dotx'                         => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
    		'dotm'                         => 'application/vnd.ms-word.template.macroEnabled.12',
    		'xlsx'                         => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
    		'xlsm'                         => 'application/vnd.ms-excel.sheet.macroEnabled.12',
    		'xlsb'                         => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12',
    		'xltx'                         => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
    		'xltm'                         => 'application/vnd.ms-excel.template.macroEnabled.12',
    		'xlam'                         => 'application/vnd.ms-excel.addin.macroEnabled.12',
    		'pptx'                         => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
    		'pptm'                         => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',
    		'ppsx'                         => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
    		'ppsm'                         => 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',
    		'potx'                         => 'application/vnd.openxmlformats-officedocument.presentationml.template',
    		'potm'                         => 'application/vnd.ms-powerpoint.template.macroEnabled.12',
    		'ppam'                         => 'application/vnd.ms-powerpoint.addin.macroEnabled.12',
    		'sldx'                         => 'application/vnd.openxmlformats-officedocument.presentationml.slide',
    		'sldm'                         => 'application/vnd.ms-powerpoint.slide.macroEnabled.12',
    		'onetoc|onetoc2|onetmp|onepkg' => 'application/onenote',
    		'oxps'                         => 'application/oxps',
    		'xps'                          => 'application/vnd.ms-xpsdocument',
    		// OpenOffice formats.
    		'odt'                          => 'application/vnd.oasis.opendocument.text',
    		'odp'                          => 'application/vnd.oasis.opendocument.presentation',
    		'ods'                          => 'application/vnd.oasis.opendocument.spreadsheet',
    		'odg'                          => 'application/vnd.oasis.opendocument.graphics',
    		'odc'                          => 'application/vnd.oasis.opendocument.chart',
    		'odb'                          => 'application/vnd.oasis.opendocument.database',
    		'odf'                          => 'application/vnd.oasis.opendocument.formula',
    		// WordPerfect formats.
    		'wp|wpd'                       => 'application/wordperfect',
    		// iWork formats.
    		'key'                          => 'application/vnd.apple.keynote',
    		'numbers'                      => 'application/vnd.apple.numbers',
    		'pages'                        => 'application/vnd.apple.pages',
    	)
    );
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/functions.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.1/src/wp-includes/functions.php#L3483)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.1/src/wp-includes/functions.php#L3483-L3597)

## 󠀁[Related](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#related)󠁿

| Used by | Description | 
| [wp_get_mime_types()](https://developer.wordpress.org/reference/functions/wp_get_mime_types/)`wp-includes/functions.php` |

Retrieves the list of mime types and file extensions.

  |

## 󠀁[Changelog](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#changelog)󠁿

| Version | Description | 
| [3.5.0](https://developer.wordpress.org/reference/since/3.5.0/) | Introduced. |

## 󠀁[User Contributed Notes](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#user-contributed-notes)󠁿

 1.  [Skip to note 2 content](https://developer.wordpress.org/reference/hooks/mime_types/?output_format=md#comment-content-4864)
 2.   [Lovro Hrust](https://profiles.wordpress.org/lovor/)  [  6 years ago  ](https://developer.wordpress.org/reference/hooks/mime_types/#comment-4864)
 3. [You must log in to vote on the helpfulness of this note](https://login.wordpress.org?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fhooks%2Fmime_types%2F%23comment-4864)
    Vote results for this note: 1[You must log in to vote on the helpfulness of this note](https://login.wordpress.org?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fhooks%2Fmime_types%2F%23comment-4864)
 4. Add Webp image type to allowed media types. Note that this type may still not display
    correctly in media library, since its dimensions might be incorrectly read by image
    processing functions.
 5.     ```php
        /**
         * Add webp to allowed media types
         */
        function wpdocs_add_webp( $wp_get_mime_types ) {
        	$wp_get_mime_types['webp'] = 'image/webp';
        	return $wp_get_mime_types;
        }
    
        add_filter( 'mime_types', 'wpdocs_add_webp' );
        ```
    
 6.  [Log in to add feedback](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fhooks%2Fmime_types%2F%3Freplytocom%3D4864%23feedback-editor-4864)

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fhooks%2Fmime_types%2F)
before being able to contribute a note or feedback.