Thème Divi : ajouter un fil d’Ariane (breadcrumbs)

Thème Divi : ajouter un fil d’Ariane (breadcrumbs)

Le thème Divi, objet des articles de cette série , ne permet pas d’ajouter un « fil d’Ariane » (breadcrumbs en anglais) pour permettre à tous les internautes de savoir où ils se situent dans un site web. J’explique ici comment utiliser une fonctionnalité de l’extension Yoast SEO pour afficher un fil d’Ariane sur les pages (toutes ou une partie) d’un site.

Sloopng / Pixabay

Pourquoi mettre un « fil d’Ariane » ?

Imaginez que vous visitez un nouveau site. Au gré des liens que vous suivez, vous pouvez vite être complètement perdu. Dans ce cas, vous pouvez parfois être sauvés par les menus de navigation, s’ils vous paraissent cohérents.

Dans d’autres cas, vous remarquerez le fil d’Ariane (ou breadcrumbs) qui vous permettra de comprendre la position de la page actuelle dans la hiérarchie du site. Evidemment, cela ne vous aidera que si la structuration du site vous paraît également cohérente.

En l’absence d’un fil d’Ariane, il est fort probable que vous quitterez ce site en pensant que son auteur est vraiment très désorganisé !

En plus, le fil d’Ariane peut aussi permettre aux robots des moteurs de recherche de mieux comprendre la structure d’un site, et donc de mieux l’indexer.

Comment intégrer un fil d’Ariane lorsque le thème ne le prévoit pas ?

Ma solution utilise l’extension Yoast SEO, mais vous pouvez aussi utiliser Breadcrumb NavXT, selon cet article (en anglais) qui m’a servi de référence.

Régler l’extension Yoast SEO

Dans le tableau de bord WordPress, menu SEO, menu Avancé, onglet « Fils d’Ariane : activer le fil d’Ariane. De nombreux paramètres peuvent alors être réglés :

Yoast SEO : réglage du fil d'Ariane

Sur cette partie des réglages, la seule chose que j’ai modifié, c’est le texte d’ancrage pour la page d’accueil. A la place de « Accueil », j’ai placé : <span class= »dashicons dashicons-admin-home »> </span>. Maintenant mon fil d’Ariane démarre par une sympathique icone de maison et ça me semble beaucoup plus facile de comprendre à quoi sert cette ligne.

Cocher « Afficher la page de blog » est une astuce de Yoast SEO pour bien montrer la position du blog dans la structure générale du site. Je l’ai laissé comme c’est proposé par défaut.

Dans la deuxième partie des réglages de Yoast SEO, on trouve deux éléments :

  • Taxonomie à afficher dans le fil d’Ariane pour les types de contenu : pour les articles, j’ai indiqué « catégorie ». Mon fil d’Ariane devient très long (ici j’ai tronqué le titre de l’article) :

Fil d'Ariane avec catégorie

  • Type de contenu d’archive à afficher dans le fil d’Ariane pour les taxonomies : je n’ai pas essayé de régler autrement (pas sur « aucun ») car je n’utilise pas les taxonomies indiquées.

Une fois ces réglages effectués le thème Divi n’affiche pas les fils d’Ariane ! Il faut maintenant aller modifier le thème enfant.

Modifier le thème enfant pour intégrer le fil d’Ariane

Mon site WordPress utilise un thème enfant de Divi, thème enfant que j’ai créé (j’explique ici comment). Evidemment, il ne faut en aucun cas faire les modifications qui suivent directement dans un thème parent !

Comme je veux que le fil d’Ariane figure sur l’ensemble des pages du site, j’ai copié le fichier header.php  de  /wp-content/themes/Divi  (thème parent) et je le place dans /wp-content/themes/clea-divi-child  (mon thème enfant).

Tout en bas de header.php  du thème enfant, en dessous de la ligne <div id= »et-main-area »> , j’ai ajouté le code suivant, comme indiqué dans  cet article (en anglais).

<!-- #main-header -->
<?php if(function_exists('yoast_breadcrumb') && !is_front_page()) {
	echo '<div class="container">';
	yoast_breadcrumb('<p id="breadcrumbs">','</p>');
	echo '</div>';
} ?>

Maintenant le fil d’Ariane apparaît sur toutes les pages. Je fais quelques ajustements de style en ajoutant dans le fichier style.css  du thème enfant les éléments suivants :

/* --- Yoast breadcrumbs inserted in header.php --- */
 #breadcrumbs{ 
	width: 100%; 
	margin-top: 1rem ;
	font-size: 0.9rem;
}

Et voilà, j’ai terminé.

A vous maintenant !

Pages catégorie du thème Divi : ajouter titre et description

Pages catégorie du thème Divi : ajouter titre et description

Par défaut, les pages de catégorie du thème Divi n’affichent ni le nom de la catégorie, ni le descriptif que l’on a défini lorsqu’on a créé la catégorie. Dans cet article de la série , nous allons voir comment générer automatiquement ce texte avant l’affichage de la liste des articles de la catégorie.

Créer un thème enfant avant de démarrer

Voir les instructions dans l’article « Créer un thème enfant pour Divi (WordPress)« .

Créer un modèle (template) pour les pages de catégorie

Pour faire ça, je suis partie des idées de ces deux articles :

Créer un fichier category.php

Télécharger le fichier index.php  de /wp-content/themes/Divi et le placer dans le répertoire du thème enfant (pour moi /wp-content/themes/clea-divi-child), puis le renommer category.php .

Pour vérifier qu’il fonctionne, on peut ajouter la ligne

<h2>NOUVEAU template pour les catégories</h2>

en dessous de la ligne

<div id="content-area" class="clearfix">

Lorsqu’on affiche une page de catégorie, on voit effectivement ce titre. Je suis donc certaine que mon fichier category.php est utilisé lors de l’affichage d’une page de catégorie.

Ajouter le titre et la description de la catégorie

J’ai ajouté les éléments des lignes 10 à 19, au début du fichier category.php :

<?php get_header(); ?>

<div id="main-content">
	<div class="container">
		<div id="content-area" class="clearfix">
			<div id="left-area">
		
		<?php 
			if ( have_posts() ) : ?>
			
				<!-- Display category title and description -->
				<header class="archive-header">
					<h1 class="archive-title"><?php single_cat_title( '', true ); ?></h1>

					<!-- Display optional category description -->
					<?php if ( category_description() ) : ?>
					<div class="archive-meta"><?php echo category_description(); ?></div>
					<?php endif; ?>
				</header>
			
		<?php
				while ( have_posts() ) : the_post();

single_cat_title(  », true );  indique qu’il faut afficher le titre de catégorie (true) et ne pas lui ajouter de texte avant ( »).

echo category_description() ;  va afficher la description de la catégorie telle qu’elle a été saisie en définissant la catégorie (menu articles >> catégories).

Maintenant, lorsque j’affiche une page de catégorie, j’ai bien son titre et sa description avant la liste des articles de cette catégorie.

Changer le style de la description

Dans le fichier style.css, j’ajoute :

.archive-meta {
	margin-bottom: 2%;
	font-style: italic;
}

Et maintenant la description est correctement séparée de la liste des articles, et le texte de la description est en italique :

Divi : insertion titre et description de catégorie

Insérer automatiquement le titre et la description de la catégorie dans une page catégorie avec Divi pour WordPress

Rendre visible les liens vers les catégories

Divi prévoit que toutes les méta descriptions des articles restent dans la couleur choisie pour le texte (ici un noir). Mais je veux que les liens vers les catégories soient plus visibles, comme dans la copie d’écran ci-dessus, où la catégorie « Vivre ses rêves » est en orange et pas en noir.

Dans la feuille de style, j’ajoute un style pour les liens vers des catégories (a[rel= »category tag »] ) :

#left-area .post-meta a[rel="category tag"] {
	color: #ed693b;
}

Et maintenant ?

Mon thème enfant fonctionne et modifie le thème parent Divi comme je le souhaitais.

Dans un autre article de cette série, j’explique comment créer des modèles de pages de catégories avec le générateur DIVI, en ayant un modèle générique et des modèles spécifiques à certaines catégories.

Créer un thème enfant pour Divi (WordPress)

Créer un thème enfant pour Divi (WordPress)

J’ai besoin de modifier des fichiers (php et css) du thème Divi. Je crée donc un thème enfant qui me permettra de faire ces modifications sans toucher au thème Divi et en maintenant sa capacité à se mettre à jour. Dans cette article de la série , j’explique comment s’organiser et créer ce thème enfant.

La situation initiale

Je suis sur un site de test, avec le thème Divi que j’ai déjà largement réglé. Bon nombres d’éléments de la personnalisation et des options du thème ont été modifiés. J’ai aussi réglé des barres latérales avec des widgets.

Il va donc falloir que je conserve tous ces ajustements.

Créer un thème enfant

Normalement, pour créer un thème enfant, il suffit de créer un répertoire dans wp-config/themes/ et d’y placer un fichier style.css contenant au moins un nom (theme name) et indiquant que c’est un thème enfant de Divi (Template: Divi) :

/*---------------------------------------------------------------------------------

 Theme Name:   LE NOM DU THEME
 Theme URI:    
 Description:  A child theme for Divi
 Author:       Anne-Laure
 Author URI:   https://knowledge.parcours-performance.com/
 Template:     Divi
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

*/

/* On peut mettre du CSS additionnel à partir d'ici */

Mais je ne connais pas encore bien Divi, et j’ai vu qu’il existait un site « constructeur de thème enfant pour Divi ». Alors j’ai essayé.

Je suis donc allée sur la page du « Divi child theme builder » du site divi.space.

J’ai rempli les lignes du formulaire puis téléchargé le fichier zip.

En regardant le contenu des fichiers, j’ai constaté que login-editor.php  contient des éléments qui modifient la personnalisation de la page de login du site. J’ai décidé de laisser ce fichier, et l’instruction qui le requiert dans functions.php. Mais on peut certainement les supprimer.

Ensuite, j’ai installé le fichier zip sur le site mais je ne l’ai pas activé tout de suite.

Sauvegarder les réglages du thème parent

Avant d’activer le thème enfant, sauvegarder les fichiers de réglage de divi, comme indiqué dans l’article Importer et exporter des paramètres et modèles du thème Divi pour WordPress, (uniquement ce qui concerne la personnalisation et les options du thème).

Pour les widgets placés dans des barres latérales (les « sidebars » qui peuvent aussi être en dessous ou au dessus !), je ne sais pas comment les récupérer automatiquement. Il faut donc faire des copies d’écran et de contenus…

MAJ du 28/09/2017 pour exporter les réglages de widgets :

pour les widget, utiliser l’extension Widget Settings Importer/Exporter. Attention, toutes les extensions utilisées pour générer des éléments des widgets doivent avoir été activées au préalable et réglées si nécessaire.

Ensuite dans le tableau de bord WordPress, menu outils, on a Widget Settings Import et export.

On peut choisir ce que l’on exporte. On obtient un fichier widget_data.json  que l’on sauvegarde. Ensuite on pourra importer ce fichier. Ca marche parfaitement pour moi.

Activer le thème enfant puis le régler

J’active le thème enfant puis j’mporte la personnalisation et les options du thème Divi que j’ai sauvegardé.

Je recrée les barres latérales à la main ou par importation avec  l’extension Widget Settings Importer/Exporter.

Et ça y est, on a un thème enfant fonctionnel !

Et maintenant ?

Dans le prochain article de cette série , je modifie Divi grâce à mon thème enfant : je crée un nouveau modèle (template) pour les pages de catégories et j’ajoute un style spécifique.

Jardin potager surélevé

Jardin potager surélevé

Je veux me faire un jardin en permaculture, surélevé. J’ai décidé de faire un prototype pour voir ce qui est le mieux. Ce prototype de jardin potager surélevé est réalisé avec un chevron traité (classe 3) et des planches de coffrage en pin, non traitées. Un film est placé à l’intérieur pour éviter que la terre ne soit au contact direct du bois et aussi pour éviter qu’elle ne tombe entre les planches horizontales.

Les composants et le matériel

Pour réaliser cette jardinière de 180 x 120 cm, sur une hauteur de 50 cm, j’ai utilisé :

  • 1 chevron de section 63×75 mm, longueur 3 m, traité classe 2 (4.95 € chez Brico Dépôt)
  • 6 planches de coffrage en épicéa, 27 x 150 de section, longueur 3 m, non traitées (3.80 € pièce chez Brico Dépôt)
  • 48 vis bichromatées 4×45
  • 1 fer à béton de section 10 mm, débité en morceaux de 60 cm environ
  • 4 tasseaux réutilisables pour servir de cale entre les planches de côté.

Le matériel était :

  • une perceuse avec foret de 5 à bois, et un outil pour fraiser la position de la tête de vis ;
  • une scie égoïne ;
  • une visseuse ou un tournevis ;
  • une agrafeuse électrique (ou un marteau)

Construction des éléments

J’ai choisi de construire la jardinière en morceaux faciles à déplacer jusqu’au potager. L’assemblage final a été réalisé en place, au potager.

Réalisation de la première section longue

J’ai d’abord fixé 3 planches de coffrage, non découpées, au chevron non découpé. L’intervalle entre les planches est défini par deux tasseaux.

Je découpe ensuite le chevron.

Je mesure pour tracer à trait perpendiculaire à 120 mm de l’extrémité des planches de coffrage.

Jardin potager surélevé, perçage pour enfoncer les têtes de vis

Je pré-perce les trous pour fixer les planches de coffrage au deuxième chevron.

Je coupe les planches de coffrage. J’ai un côté long de prêt (il me reste à recouper le chevron) et 3 planches de coffrage de 120 cm de long.

Je fais le deuxième côté long de la même manière.

Je préperce les 6 planches de 120 cm.

Après avoir amené les deux côtés (sur lesquels j’ai fixé le film avec une agrafeuse électrique) et les planches, j’assemble les planches de 120 cm à ces deux côtés.

Jardin potager surélevé, vue de côté

Et voilà le résultat !

On distingue ici l’un des deux fers à béton que j’ai placé à un angle pour ancrer la jardinière.

prototype d’éclairage LED mixte

prototype d’éclairage LED mixte

Je souhaite créer une lampe qui permette d’avoir un éclairage tamisé ou au contraire des éclairages directs focalisés pour lire. Afin d’apprendre comment faire, j’ai d’abord créé un prototype, hideux mais fonctionnel. Voici comment j’ai fait.

Mes objectifs et spécifications

Il s’agit de créer une lampe qui fonctionne à partir de deux fils électriques qui sortent du mur, et qui possède trois modes, non exclusifs :

  • éclairage tamisé, non éblouissant, permettant de bien voir dans toute la pièce (16 m²), mais pas de lire un livre ;
  • éclairage gauche, permettant de lire un livre en dessous, mais sans éclairer (trop) hors de la position du livre ;
  • éclairage droit, identique au gauche.

Je veux également apprendre comment utiliser un ruban led.

Ma liste de courses

prototype d'éclairage de chambre : les composants

J’avais déjà une planche de bois, une petite caisse en polystyrène et un bout de plexiglass. Je n’ai acheté que les composants électriques :

  • boîte pas chère de 5 interrupteurs encastrables (ici chez Leroy Merlin, à 3.90 €)
  • Ruban led 1m, 120 lumen, 2W, couleur chaude, à brancher (ici chez Leroy Merlin, à 9.90 €)
  • Transformateur 36W max (ici chez Leroy Merlin, pour 10.90 €)
  • 2 spots à led, orientables, sans lampe (ici chez Leroy Merlin, pour 4.80 € l’unité), avec culot de type GU10
  • 2 ampoules led 4.5W, 345 lumen, angle 36°, couleur blanc chaud -2700 K, culot GU10 (ici chez Leroy Merlin, pour 4.99 € l’unité) – Noter que c’est trop, en fait c’est mieux soit avec des ampoules qui acceptent un interrupteur variateur, soit avec des ampoules comme celles que j’ai acheté, mais en 3W et 230 lumen (ici chez Leroy Merlin, pour 3.99 € l’unité).

Le montage

Le montage électrique

Schéma électrique du prototype d'éclairage de chambre

Je n’ai pas utilisé la prise transformateur fournie avec le ruban LED. Je l’ai sectionnée. De même l’interrupteur fourni avec le transformateur ne m’intéressait pas. J’ai connecté le ruban led au fil avec le connecteur pour le transformateur en faisant deux soudures. Pour le reste, les toutes les arrivées 220 V se raccordent entre elles via des dominos.

J’ai oublié de prendre une photo du contenu de la boîte polystyrène avant de la fixer… Je corrigerai l’erreur lorsque je démonterai le prototype pour fabriquer la version définitive.

Et voici une photo du cablage général, avec le contenu de la boîte polystyrène :

Câblage du prototype d'éclairage de chambre

Le montage des spots et interrupteurs

prototype d'éclairage de chambre : face avant

J’ai volontairement placé les deux spots à des hauteurs différentes car je voulais voir ce que ça faisait comme différence pour lire en dessous. Les trous en trop ne servent à rien…

prototype d'éclairage de chambre : vue de côté

Dans cette vue de côté, on voit l’ampoule au mur qui ne sert plus maintenant que le prototype est en place pour tests. La version finale se branchera directement sur les fils qui alimentent l’ampoule, pas à une prise de courant comme actuellement. Dans cette vue, on distingue la caisse polystyrène qui abrite le ruban led.

Fixation temporaire du prototype

Fixation temporaire du prototype d'éclairage de chambre

Cette fixation rend assez simple le réglage de hauteur. Il me suffit en effet de décaler les deux équerres qui prennent appui sur la tête de lit.

Conclusion de cet essai

L’éclairage ambiant me paraît très satisfaisant. Il n’éblouit pas et éclaire suffisamment.

Le spot de droite paraît à la bonne hauteur (axe à 92 cm du matelas) mais pourrait sans doute donner un éclairage plus localisé s’il était un peu plus bas.

Et maintenant

Il faut que j’essaie une autre ampoule pour les spots :

  • ampoule acceptant les variateurs, ce qui me coûtera plus cher
  • ampoule 3W, 230 Lumen, 2700 K (blanc chaud) et angle 36° (ici chez Leroy Merlin, pour 3.99 € l’unité)

Il faut que je voies si je peux réutiliser les interrupteurs du va-et-vient pour allumer seulement la lumière tamisée et malgré tout amener une source permanente de 220 V pour alimenter les deux spots qui auraient chacun leur interrupteur.