Let’s say I have a Custom Post Type with the slug books. The label is Readings and the singular label is Reading.

I want to display the Custom Post Type label in one of the custom post type’s post. How can I achieve that?

If I want to display a page title from its slug, I can use

echo get_the_title(get_page_by_path('other-page-slug'));

But I haven’t found a clue to do this with custom post type.

1
1

get_post_type_object() will return, as the name suggests, an object that contains the post type information.

You may want to var_dump() it to inspect it contents. You’ll see that it includes (among other stuff) another object, labels that contains all the registered labels for the specific post type.

$pt = get_post_type_object( 'books' );

// These two usually contain the post type name in plural. 
// They may differ though.
echo $pt->label;
echo $pt->labels->name;

// This one holds the post type name in singular.
echo $pt->labels->singular_name;

Leave a Reply

Your email address will not be published. Required fields are marked *