Когда постов еще мало, а категорий уже много, может возникнуть ситуация, что в какой-нибудь категории есть только один пост. При выборе категории этот пост может выглядеть сиротливо. А почему бы не перенаправлять посетителей прямо в этот пост, если он всего лишь один в категории? А почему бы не делать так вообще для любого архива (категории, теги, даты, авторы)? Нет, ну правда, какой смысл переходить на страницу архива, а потом еще раз кликать по ссылке, когда вам и так известно, что на странице архива находится только один пост?
Сделать это легко – нужно лишь добавить следующий код в файл functions.php используемой вами темы:
function tp_redirect_to_post(){
global $wp_query;
// если на странице архива только один пост
if( is_archive() && $wp_query->post_count == 1 ){
// получаем этот пост
the_post();
// получаем ссылку на него
$post_url = get_permalink();
// делаем редирект
wp_redirect( $post_url );
}
} add_action('template_redirect', 'tp_redirect_to_post');
Теперь если на странице какого-нибудь архива находится только один пост, то вы перейдете сразу на него, пропуская эту страницу.








