WP-PageNavi Version 2.92

Description

Vous souhaitez remplacer les « vieux » liens ← Articles plus anciens | Articles plus récents → avec une pagination avancée ?

Cette extension fournit le marquer de modèle wp_pagenavi() qui permet de générer de jolis liens de pagination.

Utilisation

Dans votre thème, vous devez trouver next_posts_link() et previous_posts_link() puis les remplacer.

Dans le thème TwentyTen, cela ressemble à ça :

<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">&larr;</span> Older posts', 'twentyten' ) ); ?></div>
<div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?></div>

Vous devriez remplacer ces deux lignes par celle-ci :

<?php wp_pagenavi(); ?>

Pour les pages en plusieurs parties, vous devriez chercher un code comme celui-ci :

<?php wp_link_pages( ... ); ?>

pour le remplacer par ça :

<?php wp_pagenavi( array( 'type' => 'multipart' ) ); ?>

Allez à Tableau de bord -> Réglages -> PageNavi pour la configuration.

Changer le CSS

Si vous avez besoin de modifier le CSS de WP-PageNavi, vous pouvez copier le fichier pagenavi-css.css depuis le répertoire de l’extension vers celui de votre thème et y faire vos modifications. Cela vous évitera de perdre les modifications à la mise à jour de l’extension.

Alternativement, vous pouvez décocher l’option « Utiliser pagenavi-css.css » depuis la page des réglages et directement ajouter le style à votre fichier style.css.

Changer le noms des classes

Il y a des filtres qui peuvent être utilisés pour changer le nom des classes par défaut qui sont assignés aux éléments de navigation des pages.

Filtres

  • wp_pagenavi_class_pages
  • wp_pagenavi_class_first
  • wp_pagenavi_class_previouspostslink
  • wp_pagenavi_class_extend
  • wp_pagenavi_class_smaller
  • wp_pagenavi_class_page
  • wp_pagenavi_class_current
  • wp_pagenavi_class_larger
  • wp_pagenavi_class_nextpostslink
  • wp_pagenavi_class_last

Utilisation des filtres

// Simple Usage - 1 callback per filter
add_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_previouspostslink_class');
add_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_nextpostslink_class');
add_filter('wp_pagenavi_class_page', 'theme_pagination_page_class');

function theme_pagination_previouspostslink_class($class_name) {
  return 'pagination__control-link pagination__control-link--previous';
}

function theme_pagination_nextpostslink_class($class_name) {
  return 'pagination__control-link pagination__control-link--next';
}

function theme_pagination_page_class($class_name) {
  return 'pagination__current-page';
}


// More Concise Usage - 1 callback for all filters
add_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_class');
add_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_class');
add_filter('wp_pagenavi_class_page', 'theme_pagination_class');

function theme_pagination_class($class_name) {
  switch($class_name) {
    case 'previouspostslink':
      $class_name = 'pagination__control-link pagination__control-link--previous';
      break;
    case 'nextpostslink':
      $class_name = 'pagination__control-link pagination__control-link--next';
      break;
    case 'page':
      $class_name = 'pagination__current'
      break;
  }
  return $class_name;
}

Statut de développement

Développement

Crédits

Dons

J’ai passé beaucoup de mon temps libre à la création, mise à jour et au support de cette extension. Si vous l’appréciez et pouviez me donner quelques dollars, ce serait appréciable. Si ce n’est pas le cas, n’hésitez pas à utiliser cette extension sans aucune obligation.

Page officielle : https://fr.wordpress.org/plugins/wp-pagenavi/