Por exemplo, dentro do loop eu poderia fazer algo assim
if lastpost {
}
else {
}
if ($wp_query->current_post +1 == $wp_query->post_count) {
// this is the last post
}
Altere $ wp_query para sua própria variável de consulta se você criou um novo objeto WP_Query.
Eu codifiquei um pequeno exemplo rápido para você. Deve explicar como obter a primeira e a última postagem em um loop WP.
$post_count = 0;
$total = count($posts);
while (have_posts()) : the_post();
if ($post_count == 1 AND $post_count !== $total)
{
// This is the first post
}
if ($post_count == $total)
{
// This is the last item
}
$post_count++;
endwhile;
if (!get_next_post_link()) {
echo 'the last post here';
}
if (!get_previous_post_link()) {
echo 'the last post here';
}
OU
if (get_next_post_link()) {
echo 'the last post here';
}