WordPress Version: 6.4
/**
* Gets all available post MIME types for a given post type.
*
* @since 2.5.0
*
* @global wpdb $wpdb WordPress database abstraction object.
*
* @param string $type
* @return string[] An array of MIME types.
*/
function get_available_post_mime_types($type = 'attachment')
{
global $wpdb;
/**
* Filters the list of available post MIME types for the given post type.
*
* @since 6.4.0
*
* @param string[]|null $mime_types An array of MIME types. Default null.
* @param string $type The post type name. Usually 'attachment' but can be any post type.
*/
$mime_types = apply_filters('pre_get_available_post_mime_types', null, $type);
if (!is_array($mime_types)) {
$mime_types = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT post_mime_type FROM {$wpdb->posts} WHERE post_type = %s", $type));
}
return $mime_types;
}