Hay algunas otras preguntas sobre esto (y la paginación WP_Query parece ser una gran pregunta para muchas personas), así que estoy tratando de reducir exactamente cómo hacerlo funcionar.
Puedo crear un solo bucle personalizado con paginación de este código:
// http://weblogtoolscollection.com/archives/2008/04/19/paging-and-custom-wordpress-loops/
$temp = $wp_query;
$wp_query= null;
$wp_query = new WP_Query();
$args = array(
'showposts' => 2,
'paged' => $paged
);
$wp_query->query($args);
while ($wp_query->have_posts()) : $wp_query->the_post();
// The Post
the_title();
echo '<br>';
the_category(' ');
the_excerpt();
echo '<hr>';
endwhile;
// http://codex.wordpress.org/Function_Reference/paginate_links#Examples
$big = 999999999;
$pag_args = array(
'base' => str_replace( $big, '%#%', get_pagenum_link( $big ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $wp_query->max_num_pages
);
echo paginate_links($pag_args);
$wp_query = null;
$wp_query = $temp;
... pero, naturalmente, si copio / pego este bucle, funciona como un clon exacto, es decir, cuando hace clic en "Página 2", lo lleva a la Página 2 para AMBOS bucles.
¿Hay alguna manera de separarlos unos de otros para que cada página se separe?
Aquí está el código completo completo con un bucle duplicado si alguien está interesado en configurar su propia versión local y jugar con ella: http://paste.pocoo.org/show/573108/
wp-query
pagination
loop
Cory
fuente
fuente
Respuestas:
Sí, se puede hacer. La clave es hacer que el
format
parámetro sea diferente para las dos consultas:fuente
$wp_query
global. (2) Hay algunas rarezas de implementación enWP_Query
sí mismas que hacen que sea imposible de usarget_query_var()
y algunas otras funciones con él, por lo que generalmente hago referencia al$_GET
superglobal directamente, asegurándome de desinfectar al enviarloint
. He actualizado mi respuesta con un ejemplo de trabajo completo.