How to redirect to single post page if there is one post in category/tag

redirect-to-single-post

Archive indexes are a good way to organize your posts, but if there is only one post in an archive page it can be just a waste of time. Here i will give you a small #snippet to jump directly to the post page.

To achieve this we will use wp_redirect which is a great feature for contexual template redirections.

Here is the code to put in your functions.php file to jump single post archives :

function stf_redirect_to_post(){
	global $wp_query;

	// If there is one post on archive page
	if( is_archive() && $wp_query->post_count == 1 ){
		// Setup post data
		the_post(); 
		// Get permalink
		$post_url = get_permalink();
		// Redirect to post page
		wp_redirect( $post_url );
	}	

} add_action('template_redirect', 'stf_redirect_to_post');

This redirection check will fast forward user to the post page if there is only one post in that category/tag.

Thanks to Julie for the idea.