Display only the most recent sticky post, display other posts in chronological order

That page has exactly what you need:

Display just the first sticky post, if none return nothing:

$sticky = get_option( 'sticky_posts' );
$args = array(
    'posts_per_page' => 1,
    'post__in'  => $sticky,
    'ignore_sticky_posts' => 1
);
query_posts( $args );
if ( $sticky[0] ) {
    // insert here your stuff...
}

Source: http://codex.wordpress.org/Sticky_Posts

Then add your normal loop underneath this

Leave a Comment