Par défaut, Wordpress ne propose pas de fonction pour afficher un breadcrumb. (appellé aussi fil d’ariane où chemin de fer en Français) Nous allons voir ensemble comment créer cette fonction, afin d’afficher le fil sous la forme Home » Categorie » Article.
Le breadcrumb, toute une histoire…
Wikipedia nous renseigne parfaitement sur le breadcrumb:
En ergonomie — et plus particulièrement de nos jours dans le domaine de la conception d’interfaces informatiques — un fil d’Ariane, aussi appelé chemin de fer (et en anglais, breadcrumbs, par allusion aux miettes de pain utilisées par le Petit Poucet ainsi que Hansel et Gretel) est une aide à la navigation sous forme de signalisation de la localisation du lecteur dans un document (très souvent, une page d’un site web).
Fonctionnement
Une fois de plus, les tags conditionnels de Wordpress vont nous être particulièrement utiles. Grâce à eux, nous pouvons déterminer facilement et avec certitude si la page affichée par le visiteur est un article, une page, une archive de catégorie…
Il nous restera ensuite à utiliser les fonctions adéquates pour afficher le chemin. Pas de difficultés là non plus, Wordpress étant déja doté de tout ce qu’il faut pour récupérer les liens vers la home, les articles et les pages.
J’ai préféré écrire une fonction propre plutôt que de vous inciter à copier-coller à l’arrache une petite dizaine de lignes dans le code de votre thème.
Copiez la fonction the_breadcrumb() dans le fichier functions.php de votre thème:
function the_breadcrumb() { if (!is_home()) { echo '<a href="'; echo get_option('home'); echo '">'; bloginfo('name'); echo "</a> » "; if (is_category() || is_single()) { the_category('title_li='); if (is_single()) { echo " » "; the_title(); } } elseif (is_page()) { echo the_title(); } } }
Désormais, pour afficher le breadcrumb, il ne vous reste plus qu’à éditer les fichiers archive.php, single.php et page.php.
Collez-y l’appel à la fonction là ou vous souhaiter voir le fil apparaitre:
<?php the_breadcrumb(); ?>
Et voilà, vous venez de doter votre blog d’un fil qui permettra à vos visiteurs de s’y retrouver et de revenir facilement sur vos pages de catégories.
A noter, ce code pourrais facilement être amélioré: On pourrait par exemple limiter l’affichage des catégories et n’en faire apparaitre qu’une seule.
Quand à ceux qui préfèreront installer un plugin au lieu d’éditer leur thème, Breadcrumb NavXT devrait largement combler leur attentes.
LES COMMENTAIRES (6)
posté le 07 octobre à 11:15
Merci pour l'article, cela fait un moment que je voulais mettre un fil d'ariane sur mon blog! J'en avais vu d'autres sites, mais celui-là est parfait (en plus d'avoir un code très court) car il affiche la catégorie dans laquelle l'article est présent au lieu de mettre juste "Accueil >> nom de l'article" comme je l'ai souvent rencontré.
posté le 18 janvier à 22:43
Salut,
Merci pour cette petite fonction qui marche nickel :)
posté le 13 décembre à 18:52
Bonjour, j'utilise cette fonction qui est très bien pour mes sites wordpress. Je bloque par contre sur un problème en ce moment. Je souhaite qu'une catégorie dans laquelle se situe un article ne s'affiche pas dans le fil d'Ariane. Donc, exclure une catégorie. J'ai essayé de faire des excludes php, mais ça ne fonctionne pas. Avez-vous un conseil? Merci d'avance.
posté le 25 octobre à 14:04
Ta fonction est pas mal mais il y a également une autre solution avec une fonction Wordpress qui permet de générer un Breadcrumb ! :D
=> getcategoryparents($id, FALSE, ' >');
=> lire : http://codex.wordpress.org/FunctionReference/getcategory_parents
posté le 06 mars à 19:43
Hmm, jolie fonction. Je vais essayer de l'adapter aux Pages statiques de Wordpress (toute la difficulté venant du fait qu'une page peut être à n'importe quel niveau N de l'arbo...). Je te tiens au courant si j'aboutis à quelque chose de correct. Merci pour le code utile et la bonne piste! :)
posté le 16 juin à 16:47
Super ! J'étais justement en train de le chercher. Bonne fonction et merci de la faire partager aux autres.