WordPressでループの最初と最後を判別する方法をメモ

functions.phpに

//最初の記事を判別
function isFirst() {
global $wp_query;
    return ($wp_query->current_post === 0);
}
//最後の記事を判別
function isLast() {
global $wp_query;
    return ($wp_query->current_post+1 === $wp_query->post_count);
}

と記述

後は記事をループさせている箇所に

<?php if(have_posts()):while(have_posts()):the_post();?>

<?php if(isFirst()): ?>
最初のループに出力する内容
<?php elseif(isLast()): ?>
最後のループに出力する内容
<?php else: ?>
通常ループに出力する内容
<?php endif; ?>

<?php endwhile; endif; ?>

のようにしてあげればOK