While loop articles – if statement order

Prepare the query before you loop over it:

$first  = array_shift( $the_query->posts );
$second = array_shift( $the_query->posts );

// now re-add in reverse order
array_unshift( $the_query->posts, $first );
array_unshift( $the_query->posts, $second ); // this is now the first item

while ($the_query -> have_posts()) : $the_query -> the_post(); // regular loop