get_post_type() — возвращает тип указанного поста

В случае успеха возвращает тип поста (строка), в случае неудачи, например, если пост с указанным ID не существует, возвращает логическое false.

Под постом я подразумеваю не только записи, но и страницы (тип page), а также произвольные типы постов, которые могли быть созданы вами.

get_post_type( $post = null )
$post
(целое число|строка|объект) ID или объект поста, по умолчанию — текущий пост (использует глобальную переменную $post).

Примеры

Предположим, что на вашем сайте еще осталась запись «Привет, мир!» с ID=1, протестируем функцию на ней:

echo get_post_type( 1 ); // post

Пример с использованием цикла на WP_Query. Выведем таблицу соответствия ID и типов постов (не знаю, для чего такая таблица может понадобиться, это просто пример).

$q = new WP_Query('posts_per_page=-1&post_type=any');
if($q->have_posts()) :
	echo '<table><tr><th>ID</th><th>Тип поста</th></tr>';
	while($q->have_posts()) : $q->the_post();
		echo '<tr><td>' . $q->post->ID . '</td><td>' . get_post_type( $q->post->ID ) . '</td></tr>';
	endwhile;
	echo '</table>';
endif;

Вот такая таблица получилась у меня на тестовом сайте, на теме Twenty Ten:

результат действия функции get_post_type в цикле

Как видите, на том тестовом сайте у меня нет каких-либо произвольных типов постов — только несколько страниц и одна запись.

Оставить комментарий / вопрос

phpjsHTMLCSSSQLПросто код
  Для того, чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или авторизуйтесь на сайте.
Получайте новости блога по email или следите за мной в социальных сетях.
  • Миша: Добрый день! В принципе вам только немного нужно доработать код из этого поста - категории уже есть, цена - это и так...

  • eveniy: Добрый день Михаил, подскажите на примере как добавить свои произвольные поля в в вашу форму фильтрации: Я так понимаю...

  • Миша: Отлично! )

  • Дмитрий: сам разобрался: в настройках кастомного типа записи недавно оптимизировал настройки и переоптимизировал: в аргументе 'ta...

  • Дмитрий: У меня по какой-то причине пропало отображение (как в колонке меню слева, так и метабокс в записях ) раздела рубрик для...