Recientemente he tenido que utilizar una página con un template. Esta página debía mostrar un listado de un nuevo custom post type. Por defecto, wordpress mostrar únicamente diez elementos. El problema que me encontré fue que este custom post type llegaría a tener más de diez elementos y sucedido esto perdía la navegación entre páginas.
<?php $args=array( 'post_type' => $post_type, $tax => $category, 'post_status' => 'publish', 'paged' => $paged, 'meta_key' => 'agenda_start_date', 'orderby' => 'agenda_start_date' ); $my_query = null; $my_query = new WP_Query($args); while ($my_query->have_posts()) : $my_query->the_post(); ... endwhile; ?>
Las funciones next_posts_link() y previous_posts_link() te permiten mostrar el siguiente conjunto de mensajes que se están consultando. Leyendo la documentación del Codex de WordPress no encontraba la solución a este problema. Hasta que finalmente encontré una ligera pista sobre la navegación para un cpt.
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
Añadiendo esto al código los enlaces next_posts_link() y previous_posts_link() aparecían, pero me enlazaban con los mismos resultado y modificando la url. Esto me despisto un poco al principio. En este caso las funciones necesitaban de un segundo parámetro, el numero máximo de elementos. En definitiva le informaremos del numero total de elementos que devuelve la query para este custom post type.
<?php previous_posts_link('« Siguientes', $my_query->max_num_pages); ?>
<?php next_posts_link('Anteriores »', $my_query->max_num_pages); ?>
Esto soluciono el problema de la navegación entre páginas.
Verdades como puños…
Cada vez que escucho el tono del #Line en el metro pienso … Mira, ahí va otro agarrad@!!
— Rubén Sánchez (@cansants) April 15, 2013
It’s been a long time,
Since I’ve seen your smiling face.
It’s been a long time,
Since I’ve seen a su-u-u-u-u-u-unny day.
It’s been a long time,
Since you wore your pillbox hat.
It’s been a long time,
Since we drove your Po-o-o-o-o-o-ontiac.
It’s been a long time,
Since you gave me bu-u-u-u-u-u-u-utterflies
It’s been a long time,
Since I’ve seen it bu-u-u-u-u-u-urning in your eyes.
But I don’t mind (I don’t mind),
No I don’t (I don’t mind),
No I don’t (I don’t mind),
When I’ve got you next to me.
It’s been a long time,
Since we tripped into this ditch.
It’s been a long time,
Since we drank the ar-r-r-r-r-r-rsenic
It’s been a long time,
Since we’ve been insi-i-i-i-i-i-ide of this tomb.
It’s been a long time,
Since you wore your e-e-e-e-e-expensive French perfume.
But I don’t mind (I don’t mind),
No I don’t (I don’t mind),
But I don’t (I don’t mind),
When I’ve got you next to me.
Next to me
It’s been a long time,
Since I’ve seen your smiling face.
It’s been a long time,
Since I’ve seen a su-u-u-u-u-u-unny day.