2026.05.26 (Mar)

✹ RĂ©sumĂ© de GPT-5.5  

Un rĂ©cit sur l’ajout d’un accĂšs direct aux catĂ©gories sur mobile, et sur la transformation de /categories/ d’un dump complet d’articles en Ă©cran d’overview montrant la structure du blog.

AprÚs avoir ajouté le calendrier de sidebar à la sidebar, un problÚme de navigation plus large est apparu.

Sur desktop, il y a une sidebar. Les catégories sont visibles, et le calendrier aussi.

Mais sur mobile, l’histoire est diffĂ©rente. MĂȘme en ouvrant le menu du haut, la vraie structure des catĂ©gories du blog n’apparaissait pas immĂ©diatement. Les articles recommençaient Ă  s’accumuler, mais sur un petit Ă©cran, il devenait difficile de trouver ce qui se trouvait oĂč.

/categories/ avait le mĂȘme problĂšme.

L’archive de catĂ©gories par dĂ©faut Ă©tait fonctionnellement correcte. Mais sur un blog avec beaucoup d’articles, elle ressemblait juste Ă  une longue liste. Dans un blog oĂč Daily Review, journaux de dĂ©veloppement, journaux personnels, conversations GPT-5.5, mĂ©ditations bibliques et astuces sont mĂ©langĂ©s, une simple liste ne peut pas expliquer la structure.

La tùche de cet aprÚs-midi était donc claire.

Transformer le menu mobile et la page des catégories en écrans de navigation qui montrent la structure du blog.

J’ai ajoutĂ© un panneau de catĂ©gories au menu mobile

Le premier commit était a1efaa1.

a1efaa1  [Fix] | Mobile nav: Show category panel

Deux fichiers ont été modifiés.

_includes/masthead.html
_sass/custom/customOverride.scss

Le menu mobile existant reposait sur la structure greedy nav de Minimal Mistakes. Les liens du haut Ă©taient visibles, mais la structure des catĂ©gories de la sidebar, qui est le coeur de ce blog, ne s’ouvrait pas directement.

J’ai donc ajoutĂ© dans masthead.html un panneau de catĂ©gories rĂ©servĂ© au mobile.


<nav class="masthead-mobile-menu" aria-label="Catégories mobiles">
  <div class="masthead-mobile-menu__quick">
    {%- for link in site.data.navigation.main -%}
      <a href="{{ link.url | relative_url }}">{{ link.title }}</a>
    {%- endfor -%}
  </div>
  <div class="masthead-mobile-menu__categories">
    {%- for nav in site.data.navigation.sidebar-categories -%}
      ...
    {%- endfor -%}
  </div>
</nav>

Le point clé était de réutiliser tel quel sidebar-categories dans _data/navigation.yml.

Si la sidebar et le menu mobile regardent des données différentes, ils finiront forcément par diverger. On ajoute une catégorie, elle apparaßt sur desktop, mais pas sur mobile : ce genre de problÚme arrive vite.

Le menu mobile lit donc la mĂȘme source.

J’ai aussi inclus sidebar-nav-stats.html. GrĂące Ă  cela, mĂȘme dans le menu mobile, on peut voir le nombre d’articles et la date du dernier article de chaque catĂ©gorie.

C’est une petite diffĂ©rence, mais dans la navigation rĂ©elle, elle compte beaucoup.

Si seul le nom de la catĂ©gorie est visible, il faut cliquer pour savoir s’il y a quelque chose dedans. Avec le nombre d’articles et la date rĂ©cente, l’utilisateur distingue tout de suite les catĂ©gories actives de celles qui se sont arrĂȘtĂ©es depuis longtemps.

CĂŽtĂ© SCSS, j’ai masquĂ© les .hidden-links existants sur mobile et affichĂ© le nouveau menu quand le toggle est ouvert.

.greedy-nav .hidden-links {
  display: none !important;
}

.greedy-nav__toggle.close ~ .masthead-mobile-menu {
  display: block;
}

Le nouveau menu est devenu un panneau qui apparaĂźt juste sous la barre du haut.

.masthead-mobile-menu {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  max-height: min(72vh, 32rem);
  overflow-y: auto;
}

Sur mobile, l’important n’est pas de tout montrer d’un coup.

Il faut pouvoir voir toute la liste des catĂ©gories sur un petit Ă©cran, mais elle ne doit pas pousser le contenu du corps de page de façon permanente. Le panneau n’apparaĂźt donc que lorsqu’il est ouvert, et s’il devient long, il dĂ©file Ă  l’intĂ©rieur.

J’ai changĂ© /categories/ d’une liste d’articles en overview

Le deuxiÚme commit était ee7c436.

ee7c436  [Fix] | Categories: Replace full post archive with overview

L’ancien _layouts/categories.html utilisait directement l’include de taxonomy.


{% include posts-taxonomy.html taxonomies=site.categories %}

Je l’ai remplacĂ© par un nouvel include.


{% include category-overview.html %}

Puis j’ai créé _includes/category-overview.html.

Cet include calcule la structure des catégories du blog à partir de site.posts et de _data/navigation.yml.

Les valeurs calculées ressemblent à ceci.

Nombre total d'articles
Nombre de leaf categories en fonctionnement
Nombre d'articles écrits cette année
Date de publication la plus récente
Catégorie la plus grande
Nombre d'articles par catégorie
Date du dernier article et titre le plus récent par catégorie

À ce moment-lĂ , le category overview contenait aussi une barre de part par catĂ©gorie.


{% assign category_share = category_post_count | times: 100 | divided_by: total_post_count %}

Je ne peux pas dire que cet écran était encore parfait. Mais la direction était bonne.

/categories/ n’était plus une “longue liste d’articles par catĂ©gorie”. C’était devenu un premier Ă©cran qui montre avec quelle structure ce blog fonctionne.

Pourquoi l’overview Ă©tait nĂ©cessaire

Ce blog n’est pas un blog à sujet unique.

Il y a Daily Review, des journaux de dĂ©veloppement, des journaux personnels, des archives de conversations avec l’IA, des mĂ©ditations bibliques et des astuces. Si je veux relancer ce blog GitHub Pages, je dois faire en sorte que cette structure mixte ne devienne pas une faiblesse.

Si tous les articles sont simplement empilĂ©s par ordre chronologique, la structure devient de plus en plus floue Ă  mesure qu’on lit.

À l’inverse, avec un category overview, le lecteur voit d’abord une carte.

Quelles catégories existent ?
Quelles catégories sont réellement actives ?
OĂč les articles rĂ©cents s'accumulent-ils ?
Quel est l'axe le plus important du blog ?

C’est important aussi du point de vue portfolio.

Cela montre que rĂ©parer le blog, ce n’est pas seulement Ă©crire des articles, mais reconstruire la structure de l’information. Si j’utilise seulement les fonctionnalitĂ©s par dĂ©faut de Jekyll, les listes d’articles existent. Mais pour Ă©viter que de vrais lecteurs se perdent, il faut regarder tout le blog comme un produit navigable.

Ce qui a changĂ© aujourd’hui

Les deux commits centraux de cet aprĂšs-midi sont ceux-ci.

a1efaa1  Affichage du panneau de catégories dans le menu mobile
ee7c436  Remplacement de /categories/ par un overview au lieu d'une liste complĂšte d'articles

Par fichier, le périmÚtre était celui-ci.

_includes/masthead.html
_includes/category-overview.html
_layouts/categories.html
_sass/custom/customOverride.scss

Le menu mobile rĂ©utilise sidebar-categories depuis _data/navigation.yml. Le category overview calcule lui aussi les leaf categories Ă  partir des mĂȘmes donnĂ©es de navigation.

C’est la partie que j’aime le plus dans le travail d’aujourd’hui.

Je n’ai pas créé de nouvelle source de donnĂ©es. J’ai rĂ©utilisĂ© les dĂ©finitions de catĂ©gories que le blog possĂ©dait dĂ©jĂ . RĂ©sultat : la sidebar desktop, le menu mobile et le category overview partagent la mĂȘme structure.

Résultat

Désormais, on peut aussi ouvrir les catégories sur mobile.

Quand on appuie sur le menu du haut, la navigation de base et les groupes de catĂ©gories apparaissent ensemble. Chaque catĂ©gorie affiche aussi le nombre d’articles et la date du dernier article.

/categories/ n’est plus un long dump d’articles, mais un overview qui montre la structure du blog. On peut y voir le nombre total d’articles, le nombre de catĂ©gories actives, le nombre d’articles de l’annĂ©e, la derniĂšre date de publication et le dernier article de chaque catĂ©gorie.

Il reste encore des choses Ă  polir.

Il faudra continuer Ă  observer si la barre du category overview aide vraiment la navigation. Il faudra aussi vĂ©rifier la densitĂ© du menu mobile sur de vrais Ă©crans. Mais le coeur d’aujourd’hui est en place.

Si le blog doit recommencer à grandir, écrire des articles ne suffit pas.

Les articles accumulĂ©s doivent redevenir trouvables. Le travail d’aujourd’hui a commencĂ© Ă  rĂ©soudre ce problĂšme avec le menu mobile et le category overview.

Laisser un commentaire