Redirect to home page if query string not match to value – wordpress

Please add below code to “functions.php” for generating the query string:

function add_query_vars($aVars) {
$aVars[] = "mode";
return $aVars;
}

add_filter('query_vars', 'add_query_vars');

function add_rewrite_rules($aRules) {
$aNewRules = array('news/([^/]+)/?$' => 'index.php?pagename=news&mode=$matches[1]');
$aRules = $aNewRules + $aRules;
return $aRules;
}

add_filter('rewrite_rules_array', 'add_rewrite_rules');

function wp_redirect_to_homepage( $query ) {
if ( $query->is_main_query() && ( $query->query_vars['pagename'] == 'news') ){
if( ( array_key_exists( 'mode', $query->query_vars ) && (trim($query->query_vars['mode']) != 'follow' && trim($query->query_vars['mode']) != 'like'))) {
wp_redirect( get_permalink($query->queried_object_id) );
exit;
}
}
}
add_action( 'parse_query', 'wp_redirect_to_homepage' );

Also you can see below URL:
http://stackoverflow.com/questions/14669336/redirect-if-wordpress-query-string-is-empty 
Its very good example for rewrite query string.