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;

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: