Tags comme mots-clés : pages d'index et articles liés par tags #49
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Contexte
Les tags saisis par article (ex. type « Logiciels » → valeurs « Home Assistant », « Zigbee2MQTT »…) forment un vocabulaire contrôlé qui n'est pas encore exposé aux lecteurs. Il existe deux moyens de le valoriser.
Feature 1 — Pages d'index par tag
Créer des URLs publiques permettant de naviguer par mot-clé :
/mots-cles/mots-cles/{type}/mots-cles/{type}/{valeur}/mots-cles/logiciels/home-assistant)Ces pages sont publiques (indexables). Les articles masqués ou dans des catégories privées sont exclus.
Le slug de la valeur dans l'URL est normalisé (minuscules, tirets à la place des espaces).
Feature 2 — Articles liés par tags dans la sidebar
Amender la section « À lire aussi » de
post_view.phppour intégrer les tags comme signal de proximité :Actuellement
$alsoReadArticlesest construit à partir descorePool()sur les mots du titre + même catégorie. Il faudra ajouter un score tag-overlap en amont.Fichiers concernés
Feature 1
public/index.php— ajouter les casesmots-cles,mots-cles/{type},mots-cles/{type}/{valeur}templates/tag_index.php— nouveau template (vue d'ensemble)templates/tag_type.php— nouveau template (valeurs d'un type)templates/tag_value.php— nouveau template (articles d'une valeur)src/ArticleManager.php— méthodegetArticlesByTagValue(type, value)etgetAllTagValueCounts(type)Feature 2
public/index.php— enrichir la construction de$alsoReadArticles(autour de la ligne 652) avec un score de chevauchement de tagsPoint ouvert
Le slug de la valeur dans l'URL peut collisionner si deux valeurs distinctes normalisées donnent le même slug (ex. « C++ » et « C »). Prévoir un fallback ou rejeter la navigation par slug pour les valeurs ambiguës.
Migré depuis varlog#64