WordPress как на ладони
wordpress jino

get_post_mime_type() WP 2.0.0

Получает mime тип прикрепленных записей (картинки, файлы и т.п.), на основе переданного ID.
Функция возвращает миме тип записи или false, если миме типа нет.

Функция может использоваться с любым типом записей, но расчитана именно для прикрепленных записей.

Работает на основе: get_post()

Хуков нет.

Использование

<?php get_post_mime_type( $ID ) ?>

$ID(число)

ID записи/поста.
По умолчанию: нет

Примеры

Нужно получить миме тип записи с ID равным 121 (это загруженный в медиа раздел WordPress html файл):

$rrr = get_post_mime_type( 121 );
echo $rrr;
// выведет: text/html

Если нам нужно узнать миме тип внутри какого-либо цикла, в котором используется глобальная переменная $post, то вместо этой функции можно использовать:

$post->post_mime_type;

Код get_post_mime_type: wp-includes/post.php VER 4.9.8

<?php
function get_post_mime_type( $ID = '' ) {
	$post = get_post($ID);

	if ( is_object($post) )
		return $post->post_mime_type;

	return false;
}

Cвязанные функции

Из метки: post пост

Еще из раздела: Вложения (media файлы)

1 коммент
  • tronix17 cайт: nebster.net

    В статью можно добавить пример с демонстрацией всех возможных типов.

    Отобразим иконку файла в зависимости от типа файла (хотя для этого есть отдельная WordPress-функция wp_mime_type_icon() )

    function get_icon_for_attachment($post_id) {
      $base = get_template_directory_uri() . "/images/icons/";
      $type = get_post_mime_type($post_id);
      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 '<img src="'.get_icon_for_attachment($my_attachment->ID).'" />';
    1
    Ответитьмесяц назад #
Здравствуйте, !     Войти . Зарегистрироваться