J'essaie de générer une archive de type publication personnalisée à l'aide d'un shortcode. Tout fonctionne correctement sauf la partie get_next_posts_link. Ce qui est étrange, c’est que c’est juste à côté d’un get_previous_posts_link qui fonctionne parfaitement.
Voici la fonction
function output_tips() {
global $paged;
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array( 'post_type' => 'ht_tips', 'posts_per_page' => 1, 'paged' => $paged, 'caller_get_posts' => 1, 'orderby' => 'date', 'order' => 'DESC' );
$loop = new WP_Query( $args );
$inner = '';
while ( $loop->have_posts() ): $loop->the_post(); global $post;
$title = '<h3>'. get_the_title() .'</h3>';
$content = get_the_content();
$output = '<div class="testimonial">' . $title . $content . '</div>';
$inner .= $output;
endwhile;
$prev = '<div class="nav-previous">' . get_previous_posts_link( __( '<span class="meta-nav">←</span> Previous' ) ) . '</div>';
$next = '<div class="nav-next">' . get_next_posts_link( __( 'Next <span class="meta-nav">→</span>' ) ) . '</div>';
wp_reset_postdata();
$open = '<div class="testimonials">';
$close = '</div>';
$return = $open . $inner . $prev . $next . $close;
return $return;
}
Une idée pourquoi cela pourrait être?
C'est une vieille question, mais j'avais besoin de la réponse à celle-ci aussi. Voici la solution prise directement à partir du WP codex ...
$prev = '<div class="nav-previous">' . get_next_posts_link( __( '<span class="meta-nav">←</span> Previous' ), $loop->max_num_pages );
Vous devez ajouter le paramètremax_num_pagesde la requête à votre sortie, qui fonctionnera normalement dans le shortcode.