get_post_type_labels() – Builds an object with all post type labels out of a post type object.

You appear to be a bot. Output may be restricted

Description

Builds an object with all post type labels out of a post type object.

Accepted keys of the label array in the post type object:

  • `name` – General name for the post type, usually plural. The same and overridden
  • by `$post_type_object->label`. Default is 'Posts' / 'Pages'.
  • `singular_name` – Name for one object of this post type. Default is 'Post' / 'Page'.
  • `add_new` – Default is 'Add New' for both hierarchical and non-hierarchical types.
  • When internationalizing this string, please use a https://developer.wordpress.org/plugins/internationalization/how-to-internationalize-your-plugin/#disambiguation-by-context
  • matching your post type. Example: `_x( 'Add New', 'product', 'textdomain' );`.
  • `add_new_item` – Label for adding a new singular item. Default is 'Add New Post' / 'Add New Page'.
  • `edit_item` – Label for editing a singular item. Default is 'Edit Post' / 'Edit Page'.
  • `new_item` – Label for the new item page title. Default is 'New Post' / 'New Page'.
  • `view_item` – Label for viewing a singular item. Default is 'View Post' / 'View Page'.
  • `view_items` – Label for viewing post type archives. Default is 'View Posts' / 'View Pages'.
  • `search_items` – Label for searching plural items. Default is 'Search Posts' / 'Search Pages'.
  • `not_found` – Label used when no items are found. Default is 'No posts found' / 'No pages found'.
  • `not_found_in_trash` – Label used when no items are in the Trash. Default is 'No posts found in Trash' /
  • 'No pages found in Trash'.
  • `parent_item_colon` – Label used to prefix parents of hierarchical items. Not used on non-hierarchical
  • post types. Default is 'Parent Page:'.
  • `all_items` – Label to signify all items in a submenu link. Default is 'All Posts' / 'All Pages'.
  • `archives` – Label for archives in nav menus. Default is 'Post Archives' / 'Page Archives'.
  • `attributes` – Label for the attributes meta box. Default is 'Post Attributes' / 'Page Attributes'.
  • `insert_into_item` – Label for the media frame button. Default is 'Insert into post' / 'Insert into page'.
  • `uploaded_to_this_item` – Label for the media frame filter. Default is 'Uploaded to this post' /
  • 'Uploaded to this page'.
  • `featured_image` – Label for the featured image meta box title. Default is 'Featured image'.
  • `set_featured_image` – Label for setting the featured image. Default is 'Set featured image'.
  • `remove_featured_image` – Label for removing the featured image. Default is 'Remove featured image'.
  • `use_featured_image` – Label in the media frame for using a featured image. Default is 'Use as featured image'.
  • `menu_name` – Label for the menu name. Default is the same as `name`.
  • `filter_items_list` – Label for the table views hidden heading. Default is 'Filter posts list' /
  • 'Filter pages list'.
  • `filter_by_date` – Label for the date filter in list tables. Default is 'Filter by date'.
  • `items_list_navigation` – Label for the table pagination hidden heading. Default is 'Posts list navigation' /
  • 'Pages list navigation'.
  • `items_list` – Label for the table hidden heading. Default is 'Posts list' / 'Pages list'.
  • `item_published` – Label used when an item is published. Default is 'Post published.' / 'Page published.'
  • `item_published_privately` – Label used when an item is published with private visibility.
  • Default is 'Post published privately.' / 'Page published privately.'
  • `item_reverted_to_draft` – Label used when an item is switched to a draft.
  • Default is 'Post reverted to draft.' / 'Page reverted to draft.'
  • `item_scheduled` – Label used when an item is scheduled for publishing. Default is 'Post scheduled.' /
  • 'Page scheduled.'
  • `item_updated` – Label used when an item is updated. Default is 'Post updated.' / 'Page updated.'
  • `item_link` – Title for a navigation link block variation. Default is 'Post Link' / 'Page Link'.
  • `item_link_description` – Description for a navigation link block variation. Default is 'A link to a post.' /
  • 'A link to a page.'

Above, the first default value is for non-hierarchical post types (like posts) and the second one is for hierarchical post types (like pages). Note: To set labels used in post type admin notices, see the post_updated_messages filter.

Usage

$object = get_post_type_labels( $post_type_object );

Parameters

$post_type_object
( object|WP_Post_Type ) required – Post type object.

Returns

object Object with all the labels as member variables.

Source

File name: wordpress/wp-includes/post.php


Lines:

1 to 39 of 39
function get_post_type_labels( $post_type_object ) {
  $nohier_vs_hier_defaults = WP_Post_Type::get_default_labels();

  $nohier_vs_hier_defaults['menu_name'] = $nohier_vs_hier_defaults['name'];

  $labels = _get_custom_object_labels( $post_type_object, $nohier_vs_hier_defaults );

  $post_type = $post_type_object->name;

  $default_labels = clone $labels;

  
/**
 * Filters the labels of a specific post type.
 *
 * The dynamic portion of the hook name, `$post_type`, refers to
 * the post type slug.
 *
 * Possible hook names include:
 *
 *  - `post_type_labels_post`
 *  - `post_type_labels_page`
 *  - `post_type_labels_attachment`
 *
 * @since 3.5.0
 *
 * @see get_post_type_labels() for the full list of labels.
 *
 * @param object $labels Object with labels for the post type as member variables.
 */
  $labels = apply_filters( "post_type_labels_{$post_type}", $labels );

  // Ensure that the filtered labels contain all required default values.
  $labels = (object) array_merge( (array) $default_labels, (array) $labels );

  return $labels;
}
 

 View on GitHub View on Trac