
Partager la publication "Paginate_links : Pagination dans un template page WordPress"
Paginate_links : Nous allons dans ce tutoriel utiliser de manière simple des liens de pagination pour afficher les pages suivantes de résultats dans un template page WordPress.
Il y a plusieurs manières d’afficher les résultats Post Type.
Vous pouvez par exemple créer une page archive Post Type comme ceci par exemple :
archive-posttype.php (Le nom de votre Post Type doit remplacer posttype).
Mais vous pouvez aussi créer pour différentes raisons un Template page qui affichera les résultats du Post Type.
Nous construisons un template page de base pour afficher notre loop qui contiendra notre Paginate_links.
Dans l’exemple, nous exécutons un get_template_part qui pointe dans le dossier templates-part et appelle le fichier loop-listings.php.
1 2 3 | <!--?php /*** Template Name: Listings Medium * * @package WordPress * @subpackage Viadirectory * @since Viadirectory 1.0 */ ?--> <?php get_header(); ?--> <!--// Main Content \\--> |
Maintenant, affichons notre loop qui se trouve dans notre fichier loop-listings.php.
Qui correspond à notre get_template_part( ‘templates-part/loop-listings’ );.
On ajoute dans nos arguments un get query var comme ceci :
$paged = ( get_query_var( ‘paged’ ) ) ? absint( get_query_var( ‘paged’ ) ) : 1;
Puis on spécifie le nombre de Post Type par page avec l’argument posts_per_page, puis on confirme la pagination paged en appelant la variable $paged.
Paginate_links : Notre pagination dans le loop Post Type
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <!--?php // set up or arguments for our custom query $paged = ( get_query_var( 'paged' ) ) ? absint( get_query_var( 'paged' ) ) : 1; $query_args = array( 'post_type' => 'vialistings', 'posts_per_page' => 4, 'paged' => $paged ); // create a new instance of WP_Query $the_query = new WP_Query( $query_args ); ?--> <!--?php if ( $the_query-&gt;have_posts() ) : while ( $the_query-&gt;have_posts() ) : $the_query-&gt;the_post(); // run the loop ?--> // Votre HTML <!--?php endwhile; ?--> <!--// Clear \\--> |
<!–?php $big = 999999999; // need an unlikely integer echo ‘</p> <div class= »styled-pagination text-center margin-top-50″>’; echo paginate_links( array( ‘base’ => str_replace( $big, ‘%#%’, esc_url( get_pagenum_link( $big ) ) ), ‘format’ => ‘?paged=%#%’, ‘current’ => max( 1, get_query_var(‘paged’) ), ‘total’ => $the_query->max_num_pages, ‘type’ => ‘list’ ) ); echo ‘</div> <p>’; ?>
Adapter ce loop exemple au votre.
Il est toujours important de faire un back-up de son thème WordPress avant de travailler de nouvelles fonctions WordPress ou de mettre en place des compléments au thème.