get_post_type_object() — возвращает объект типа поста

Функция возвращает объект, содержащий всю информацию об указанном типе поста.

get_post_type_object( $post_type );
$post_type
(строка) тип поста

Для начала попробуем вывести объект стандартного типа page. Это делается следующим образом:

$page_obj = get_post_type_object( 'page' );
print_r( $page_obj );

В результате мы получаем следующее. Хотя, на самом деле, весь объект будет сбит в одну строку. Для того, чтобы расставились переносы строк и отступы, нужно поместить выводимый объект в HTML-тег <pre>, вот так:
<pre><?php print_r( $page_obj ); ?></pre>

stdClass Object
(
	[labels] => stdClass Object
		(
			[name] => Страницы
			[singular_name] => Страница
			[add_new] => Добавить новую
			[add_new_item] => Добавить страницу
			[edit_item] => Редактировать страницу
			[new_item] => Новая страница
			[view_item] => Просмотреть страницу
			[search_items] => Поиск страниц
			[not_found] => Страниц не найдено.
			[not_found_in_trash] => Страниц в корзине не найдено.
			[parent_item_colon] => Родительская страница:
			[all_items] => Все страницы
			[menu_name] => Страницы
			[name_admin_bar] => Страницу
		)
 
	[description] => 
	[publicly_queryable] => 
	[exclude_from_search] => 
	[capability_type] => page
	[map_meta_cap] => 1
	[_builtin] => 1
	[_edit_link] => post.php?post=%d
	[hierarchical] => 1
	[public] => 1
	[rewrite] => 
	[has_archive] => 
	[query_var] => 
	[register_meta_box_cb] => 
	[taxonomies] => Array()
	[show_ui] => 1
	[menu_position] => 
	[menu_icon] => 
	[can_export] => 1
	[show_in_nav_menus] => 1
	[show_in_menu] => 1
	[show_in_admin_bar] => 1
	[delete_with_user] => 1
	[name] => page
	[cap] => stdClass Object
		(
			[edit_post] => edit_page
			[read_post] => read_page
			[delete_post] => delete_page
			[edit_posts] => edit_pages
			[edit_others_posts] => edit_others_pages
			[publish_posts] => publish_pages
			[read_private_posts] => read_private_pages
			[read] => read
			[delete_posts] => delete_pages
			[delete_private_posts] => delete_private_pages
			[delete_published_posts] => delete_published_pages
			[delete_others_posts] => delete_others_pages
			[edit_private_posts] => edit_private_pages
			[edit_published_posts] => edit_published_pages
			[create_posts] => edit_pages
		)
 
	[label] => Страницы
)

Можно обратиться к любой информации из объекта:

$page_obj = get_post_type_object( 'page' );
echo $page_obj->labels->name;

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

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

  • Миша: Добрый вечер! Если я правильно понял, то: if( $opisanie ) echo '' . $opisanie . '' ;

  • alex morozov: Добрый вечер! у меня возникла следующая проблема. Я делаю фотоальбомы, чтобы они выглядели "как в контакте". Так вот, та...

  • Vladislav: Если эту муть убрать, то исчезает меню, и появляется описание под миниатюрами, которого не должно быть, как вы видите, я...

  • Миша: Либо размеры изображений вам помогут, либо CSS. И строку 14 гляньте, там муть какая-то.