WordPress : Navigation personnalisée entre les articles

Wordpress - Tutoriel - navigation-personnalisée-entre-articles
WordPress 25 avril 2015

La solution suivante va vous permettre d'afficher les liens d'article suivant & précédent de manière plus poussée.

Grâce à ce code vous allez pouvoir :
- Afficher les titres des articles au lieu du traditionnel "Article précédent" | "Article suivant".
- Choisir d'appeler uniquement des articles de la même catégorie, ou bien de toutes les catégories.
- Construire une structure HTML personnalisée.
- Conserver et ajouter des classes CSS afin de créer votre mise en forme sur-mesure.
 
Vous pouvez obtenir un rendu de ce type par exemple :
navigation-article-lab
 
 
Passons maintenant aux choses sérieuses.
Le code est à insérer dans votre fichier de template d'article perso (aussi nommé Custom Post Type) ou par défaut dans le fichier single.php
Si vous utilisez un thème WordPress par défaut, il vous faut trouver ce bout de code dans le fichier :

<div class="nav-previous"><?php previous_post_link( '%link', '<span class="meta-nav">' . _x( '←', 'Previous post link', 'twentyten' ) . '</span> %title' ); ?></div>

<div class="nav-next"><?php next_post_link( '%link', '%title <span class="meta-nav">' . _x( '→', 'Next post link', 'twentyten' ) . '</span>' ); ?></div>

 
et le remplacer par le code que je vous livre maintenant :
<?php
$prev_post = get_previous_post('true');
if($prev_post) {
$prev_title = strip_tags(str_replace('"', '', $prev_post->post_title));
echo "\t" . '<a rel="prev" href="' . get_permalink($prev_post->ID) . '" title="' . $prev_title. '" class="article-precedent"><span class="icone">«</span><h4>'. $prev_title . '"</h4></a>' . "\n";
}

$next_post = get_next_post('true');
if($next_post) {
$next_title = strip_tags(str_replace('"', '', $next_post->post_title));
echo "\t" . '<a rel="next" href="' . get_permalink($next_post->ID) . '" title="' . $next_title. '" class="article-suivant"><span class="icone">»</span><h4>'. $next_title . '"</h4></a>' . "\n";
}
?>

Essayons à présent de comprendre ce petit bout de code magique.

"get_previous_post('true');" et "get_next_post('true');"

Ils vont respectivement appeler l'article précédent et l'article suivant.
Si vous choisissez 'true', alors vous afficherez uniquement des articles de la même catégorie.
Si vous souhaitez que tous les articles soient pris en compte peu importe leur catégorie, écrivez 'false'.
 

<span>

La balise span sert ici à appeler les petits icônes de navigation.
"&laquo;" vous donnera "<<"
"&raquo;" vous donnera ">>"
Vous êtes libres de donner une classe ou un id au span afin de la personnaliser voir même d'appeler vos propres icônes ou images.
 

<h4>

Dans l'exemple, j'ai choisi de placer les titres des articles appelés dans une balise <h4>. Vous pouvez choisir la balise qui vous arrange le plus ou même ne pas en utiliser.
 

ÉDIT AVRIL 2020

Ce code plus simpliste fait également le job !

<?php previous_post_link('« %link', '%title', TRUE); ?>
<?php next_post_link('« %link', '%title', TRUE); ?>
Afficher la pagination

Si vous choisissez ‘true’, alors vous afficherez uniquement des articles de la même catégorie.
Si vous souhaitez que tous les articles soient pris en compte peu importe leur catégorie, écrivez ‘false’.
 
<?php next_post_link('« %link', '%title', FALSE, '17'); ?>
Exclure une catégorie

Pour exclure une catégorie en particulier, il faut le préciser en écrivant "FALSE" puis l'identifiant de la catégorie à exclure (ici 17).


Avis clients

Tibow Webdesign

Tous les avis

Loïc Perrière 6 janvier 2021

Ingénieur de recherches - CNRS / Recommandation LinkedIn
Lors du démarrage de projet de refonte du site web de mon laboratoire, j’ai contacté Thibaut pour obtenir des renseignements sur un travail qu’il avait déjà réalisé auprès d’un autre client.
Sa franchise et la clarté de ses réponses m’ont finalement convaincu de lui confier la conception de deux sites internet. Nos échanges ont toujours été constructifs, et Thibaut a fait preuve, tout au long du développement, de dynamisme et de réactivité, et a également réalisé de nombreuses propositions qui ont majoritairement été retenues. Enfin, il a su faire preuve d’écoute pour intégrer les problématiques et les demandes spécifiques d’un site internet de laboratoire public pour créer un site à notre image.
La collaboration a été fructueuse et constructive, et ça a été un réel plaisir de travailler avec lui.

Clara Deleuze 21 décembre 2020

Principal Chief Executive Officer chez On Divorce / Recommandation LinkedIn
Je collabore avec Thibault depuis plus de 10 ans.
Plus qu'un dev Full Stack c'est un profil au sens logique qui sera vous accompagner plus globalement sur votre projet IT.
Je lui ai confié plus de 5 projets et vous le recommande vivement : réactivité, sens du détail, proactivité...Il sait s'adapter "au métier" pour lequel il intervient et pas uniquement à la fonctionnalité !

Ackeret Mano 22 février 2019

Google Avis
Nous avons fait appel à Thibaut pour développer le site internet de notre entreprise Ackeret Mano, l'année dernière et nous avons été très satisfaits.

C'est un garçon à l'écoute, disponible et sérieux.
Nous vous le recommandons les yeux fermés.

Frédéric Meyrou 19 octobre 2018

Google Avis
Thibaut a repris en main le site du projet de coopérative supercoop.fr et il a parfaitement compris le style et l'énergie qu'il fallait donner au projet donc le site est un vecteur important de communication. Vous pouvez lui faire confiance!

Patrick Chatenet 24 juin 2018

Google Avis
Nous avons travaillé avec Thibaut Soufflet pour finaliser un site Wordpress fait par une autre personne qui était partie vers d'autres horizons professionnels. Il s'est parfaitement adapté, nous a bien écouté et a proposé de très bonnes solutions en termes d'ergonomie et de facilité d'utilisation pour nos clients. A eu à régler des problèmes techniques et a pris le temps de nous trouver les meilleures solutions. Je le conseille vivement!

Anaelle Sorignet 21 mai 2018

Google Avis
Tibow est super efficace, réactif et à l'écoute ! Il nous a concocté un super site. Je recommande vivement de faire appel à lui.

ISOPROM 15 avril 2018

Google Avis
donne de tres bons conseils

Alexis Supiot 5 septembre 2017

Google Avis
Plusieurs projets avec Thibaut et à chaque fois de bons échanges, une facilité dans la compréhension de nos attentes et pour l'ensemble des résultats très satisfaisants sur le rendu. Je recommande vivement et sais que nous aurons d'autres projets ensemble.

Jenny Debaere 1 septembre 2017

Google Avis
Je tiens à mettre en avant les très bonnes compétences techniques de Thibaut, qui a réalisé un travail correspondant totalement à mes attentes.
C'est une personne très attentive et à l'écoute qui saura comprendre votre univers et transposer cela à vos projets. Un autre point fort est sans nul doute sa réactivité et son professionnalisme quant au respect des jalons demandés. Je le recommande très fortement pour vos projets de site. Je n'hésiterai pas à collaborer de nouveau avec lui.

Pierre Arbeille 20 juillet 2016

Google Avis
Thibaut a réalisé le design de mon site, et j'en suis très satisfait. Le design correspondait exactement avec ce que j'avais en tête (mais sans les talents pour le réaliser). Et le délai a été tenu, merci encore !