Como no repetir posts que ya aparecen en el front-page.php?

Con la nueva versión Release Candidate 3.0 de WordPress, se puede utilizar una página de inicio diferente a la contenedora del lazo principal y de esta manera poder personalizar de mejor manera nuestro sitio web.

Sin embargo, hoy estuve colocando algunas cosas en la página principal de uno de mis clientes y al inicio de esta, se encuentran una especie de “Titulares” (con etiqueta Titulares) que luego no quisiera mostrar nuevamente en el resto de la página (en una sección de la página muestro otros resultados de diversas categorías incluyendo “Titulares”). Luego de una búsqueda insaciable y de probar con diferentes opciones, llegué al sitio más lógico donde se debe llegar cuando se necesita ayuda con algún argumento de una función: WordPress Codex.

Con el argumento 'post__not_in' => array() es posible obtener resultador de un WP_query() sin los elementos específicos que le indiquemos al lazo. En mi caso, en cada “query” voy armando el arreglo de los elementos que estoy mostrando para así evitar mostrarlos nuevamente. El código es algo parecido a lo siguiente:

$titleImg = new WP_Query();
$titleImg->query('cat=3&showposts=5');
$i = 0;
$mainPostID = array();
while ($titleImg->have_posts()) : $titleImg->the_post();
$firstImage = ev_get_firstimage();
$curPostID = $post->ID;
$mainPostID[$i] = $curPostID;
$i++;
... Resto del código

Luego, llamo al arreglo $mainPostID en el próximo query:

<?php
$args = array (
'showposts'=>4,
'cat'=>-7,
'post__not_in'=>$mainPostID,
);
$miniNews = new WP_Query();
$miniNews->query($args);
while ($miniNews->have_posts()) : $miniNews->the_post();

Esta es una manera práctica de evitar posts iguales cuando no tenemos una separación por categorías en cierto Query.

Anuncios

2 pensamientos en “Como no repetir posts que ya aparecen en el front-page.php?

    • Hola Diego. El código lo insertas en el loop cuyos posts no quieres que se vean luego. Simplemente depende de tu código y no del lugar que “yo diga” que vaya.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s