Архивные субтитры для разных типов архивов

Я хотел бы показать пользовательский субтитр для разных типов архивных страниц. Я могу легко узнать, какой тип страницы архива я нахожу (дата, категория и т. Д.), Но я ничего не нашел в сети, которая подсказывает мне, как получить значимую информацию для каждого конкретного типа страниц архива.

У меня есть следующая функция:

function get_the_subtitle() { global $post; $subtitle = ''; if (is_archive()) { $subtitle = 'Blog posts for '; } if (is_date()) { $subtitle .= '2012/03'; // Real archive date here of current page } else if (is_category()) { $subtitle .= 'Uncategorized'; // Real archive category here of current page } else if (is_author()) { $subtitle .= 'admin'; // Real archive author here of current page } else if (is_tag()) { $subtitle .= 'tag'; // Real archive tag here of current page } return $subtitle; } 

Может ли кто-нибудь показать мне, как легко создавать разные субтитры для конкретных страниц архива? Заполнение этой функции средствами для создания значений было бы очень полезно.

Solutions Collecting From Web of "Архивные субтитры для разных типов архивов"

Как насчет использования функции single_cat_title() независимо от типа архива? Например:

 function get_the_subtitle() { if( is_archive() ) { $subtitle = 'Blog posts for '; } if( is_category() || is_tag() ) { $subtitle .= single_cat_title( '', false ); } if( is_author() ) { $curauth = ( get_query_var( 'author_name' ) ) ? get_user_by( 'slug', get_query_var( 'author_name' ) ) : get_userdata( get_query_var( 'author' ) ); // you can set this to many things, see the get_userdata() docs for a list $subtitle .= $curauth->user_nicename; } if( is_date() ) { $month = get_query_var('monthnum') $day = get_query_var('day') $year = get_query_var('year') $string = ''; $string .= ( !empty( $day ) ) ? $day : ''; $string .= ( !empty( $string ) ) ? '/' : ''; $string .= ( !empty( $month ) ) ? $month : ''; $string .= ( !empty( $string ) ) ? '/' : ''; $string .= ( !empty( $year ) ) ? $year : ''; $subtitle .= $string; } if( !empty( $subtitle ) ) { return $subtitle; } else { return false; } }