1

I'm trying to pull a custom post type name/title out for use in the breadcrumb of a single-[cpt].php template file.

In the archive-[cpt].php I can use post_type_archive_title() and it echo the name. How would I get this same title in a single view?

Thanks!

I've trawled though the codex and haven't seen a function, but might have missed it!

1 Answer 1

6

There doesn't appear to be one, but the following should work:

//Get post type    
$post_type_obj = get_post_type_object( get_post_type() );
//Get post type's label
$title = apply_filters('post_type_archive_title', $post_type_obj->labels->name );        
$archive_title = apply_filters('post_type_archive_title', $post_type_obj->labels->all_items);

This can, for instance, be put in one generic header template that is applied to all single-cpt files. With is_single() it can be put in an even more generic header template.

For a complete list of labels, see http://codex.wordpress.org/Function_Reference/register_post_type#Arguments

1
  • Thanks for the suggestion Stephen, yes I know it seems like i should be able to just enter the name manually, but I wanted this template to work across the board for other CPT's too, I should have said that first. Also your solution is still probably what I'll use because it'll pull out the Label so if that ever changes the breadcrumb will reflect that change. Commented Feb 1, 2012 at 21:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.