web-dev-qa-db-fra.com

Comment obtenir une étiquette de type poste personnalisée et une étiquette singulière de son slug?

Disons que j'ai un type de message personnalisé avec le slug books. L'étiquette est Readings et l'étiquette singulière est Reading.

Je souhaite afficher l'étiquette Type de message personnalisé dans l'un des articles du type de message personnalisé. Comment puis-je y arriver?

Si je veux afficher un titre de page à partir de son slug, je peux utiliser

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

Mais je n'ai pas trouvé d'indice pour le faire avec un type de message personnalisé.

4
deathlock

get_post_type_object() retournera, comme son nom l’indique, un objet contenant les informations sur le type de publication.

Vous voudrez peut-être var_dump() pour inspecter le contenu. Vous verrez qu'il inclut (entre autres choses) un autre objet, labels, qui contient toutes les étiquettes enregistrées pour le type de publication spécifique.

$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;
7
Anastis