可以为此任务编写常规模板标记。
function wpse60306_get_post_type( $echo = true )
{
static $post_types, $labels = \'\';
// Get all post type *names*, that are shown in the admin menu
empty( $post_types ) AND $post_types = get_post_types(
array(
\'show_in_menu\' => true,
\'_builtin\' => false,
),
\'objects\'
);
empty( $labels ) AND $labels = wp_list_pluck( $post_types, \'labels\' );
$names = wp_list_pluck( $labels, \'singular_name\' );
$name = $names[ get_post_type() ];
// return or print?
return $echo ? print $name : $name;
}
解释我们有两个变量声明为
static
, 因此,如果您在显示不同帖子类型帖子的循环中使用该任务,则不必重做该任务。
你也有争论((bool) true/false
) 如果只想返回或右键打印名称,请切换。
此函数不适用于内置的帖子类型(假设您不需要它)。如果您也需要它用于内置的帖子类型,那么只需删除_builtin
内部函数的参数↑ get_post_types()
.