# Получение MIME-типа поста в WordPress: Функция GET_POST_MIME_TYPE()
Функция GET_POST_MIME_TYPE() позволяет узнать MIME-тип, т.е. формат файла вложения, используя его ID. Эта функция полезна для работы с вложениями, такими как изображения, документы и другие мультимедийные файлы.
## Как это работает?
Функция может быть использована с любым типом поста, но чаще всего применяется именно для вложений. Она возвращает строку с MIME-типом файла или false, если тип не удалось получить.
**Возвращаемое значение:**
- **String|false**: MIME-тип в случае успеха, false в случае ошибки.
## Применение функции
### Синтаксис
```php
get_post_mime_type( $post );
$post(int|WP_Post): ID поста или объект поста. По умолчанию используется глобальная переменная$post.
Примеры использования
Пример 1: Получение MIME-типа поста
Предположим, вам нужно получить MIME-тип для поста с ID 121 (например, это загруженный файл HTML в медиабиблиотеку WordPress):
$rrr = get_post_mime_type( 121 );
echo $rrr;
// вывод: text/html
Если вы находитесь внутри цикла и хотите узнать MIME-тип текущего поста, можно использовать:
$post->post_mime_type;
Пример 2: Получение пути к иконке
Если вы хотите получить путь к иконке в зависимости от MIME-типа поста, используйте следующую функцию:
function get_icon_for_attachment( $post_id ) {
$base = get_template_directory_uri() . "/images/icons/"; // Путь к иконкам
$type = get_post_mime_type($post_id); // Получаем MIME-тип
switch ($type) {
case 'image/jpeg':
case 'image/png':
case 'image/gif':
return $base . "image.png"; // Иконка изображения
break;
case 'video/mpeg':
case 'video/mp4':
case 'video/quicktime':
return $base . "video.png"; // Иконка видео
break;
case 'text/csv':
case 'text/plain':
case 'text/xml':
return $base . "text.png"; // Иконка текста
break;
default:
return $base . "file.png"; // Иконка по умолчанию
}
}
// Использование функции:
echo '
';
Также в WordPress существует функция wp_mime_type_icon(), которая может помочь получить иконку по MIME-типу.
Изменения в функции
Функция была введена в версии 2.0.0 и была доступна в файле wp-includes/post.php с определением:
function get_post_mime_type( $post = null ) {
$post = get_post( $post );
if ( is_object( $post ) ) {
return $post->post_mime_type;
}
return false;
}
Связанные функции
-
post:
get_post_ancestors()
-
MIME-тип:
wp_get_image_mime()wp_get_mime_types()
-
Вложения (медийные файлы):
get_attached_file()get_attached_media()get_attachment_link()get_children()is_local_attachment()the_attachment_link()wp_attachment_is()wp_delete_attachment()wp_get_attachment_link()wp_get_attachment_url()wp_get_original_image_path()wp_get_original_image_url()wp_insert_attachment()
Эта информация поможет вам эффективно использовать функцию get_post_mime_type() для работы с вложениями в WordPress.