Cómo estilizar el primer post en el loop como un post "nuevo/destacado"
Espero poder explicarlo bien. Lo que estoy intentando hacer es usar el loop por defecto de WordPress para mostrar todos mis posts, pero para el primer post me gustaría que tenga un estilo completamente diferente dependiendo de la categoría padre en la que fue publicado, así que habría mucho contenido especial en ese primer post.
Actualmente lo estoy logrando parcialmente usando 2 loops que obtienen datos del loop por defecto. El primer loop es mi área de "post nuevo/destacado" y está configurado con posts_per_page=1. El segundo loop es el estándar, pero el problema es que obviamente muestra posts duplicados. Intenté usar offset=1 en el segundo loop pero entonces mi paginación deja de funcionar. Cualquier ayuda o dirección sería genial, sé que es mucho. Abajo está mi código para ambos loops y un enlace a mi sitio de pruebas. ¡Gracias!
Primer loop (nuevo/destacado):
<?php $custom_query = new WP_Query('posts_per_page=1');
while($custom_query->have_posts()) : $custom_query->the_post(); ?>
<?php
$parent_cat = array();
$post_cats = get_the_category($post->ID);
foreach( $post_cats as $post_cat ) {
if( $post_cat->parent ) $parent_cat[] = get_category( $post_cat->parent )->slug;
}
?>
<!--CONTENIDO AQUÍ-->
<?php endwhile; ?>
<?php wp_reset_postdata(); // reinicia la consulta ?>
<?php } else { ?>
Segundo loop (estándar):
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<!--CONTENIDO AQUÍ-->
<?php endwhile; else: ?>
<?php _e('Lo sentimos, no hay posts que coincidan con tus criterios.'); ?>
<?php endif; ?>
Aquí hay un enlace al sitio de desarrollo donde puedes ver de lo que estoy hablando: http://themes.thefragilemachine.com/gone/
¡Gracias por cualquier ayuda!

También verifica si es is_archive() o !is_singular() para asegurarte de que la página no tenga una publicación única. No sé si is_paged() tiene el mismo efecto.

esto parece estar funcionando pero solo muestra 1 publicación, y sin extracto, http://themes.thefragilemachine.com/gone/, me di cuenta de que tengo is_paged()

Solo agrega una variable que funcionará una sola vez con PHP como en este ejemplo:
<?php $custom_query = new WP_Query('posts_per_page=1');
$i = 0; while($custom_query->have_posts()) : $custom_query->the_post(); ?>
<?php if($i==0){
// haz - muestra lo que quieras
$i++;
} else {
// resto de los posts
} ?>
<?php endwhile; ?>
<?php wp_reset_postdata(); // reinicia la consulta ?>
