Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Cómo conseguir varias listas de entradas sin que se repitan en WordPress

Imago voragine.net
[actualizado el ]

Para conseguir varios listados de entradas en una misma página de WordPress tenemos que reproducir el Loop tantas veces como listas queramos tener. Así podremos tener una lista general, otra en la que solo tengamos las entradas de una categoría y cosas así. El código que esté dentro del Loop se repetirá para cada entrada, para todas si el Loop es genneral o para un rango de entradas si lo definimos.

En el tutorial sobre el Loop de wordpress.org se explica cómo duplicar el Loop y algunas pistas para definir el rango de entradas. Para tener una información detallada sobre cómo limitar el Loop se puede consultar la entrada del manual de wordpress.org sobre la función WP_Query.

Lo que no explican estos manuales es cómo hacer para que no se repitan las entradas en los diferentes Loops. Esto puede ser lo que necesitamos si por ejemplo queremos que en nuestra portada aparezca la entrada más reciente con un formato y todas las demás con otro. En uno de los foros de wordpress.org se dan algunas soluciones; copio aquí una que utiliza la variable offset de WP_Query, con la que podemos decirle al Loop cuántas entradas se tiene que saltar.

El código para el primer Loop (he sustituido < por [ y > por ], para poder insertar código PHP):

[?php
$my_query = new WP_Query('showposts=1');
while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;
?]
(normal post code)
[?php endwhile; ?]

El código para el segundo Loop:

[?php
$my_query = new WP_Query('showposts=9&offset=1');
while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;
?]
(normal post code)
[?php endwhile; ?]

El resultado será una lista de diez entradas en la que la primera se muestra de manera diferente a las demás.

Dejar un comentario

No hay comentarios en esta entrada.
*
*

 

No hay trackbacks