mardi, 07 septembre 2021 12:35

Module vue arbre : afficher sous la forme d'un arbre les hashtags de Joomla content

Écrit par
Évaluer cet élément
(0 Votes)

Toujours dans l'exploitation et la mise en page des données issues de Joomla Content, aujourd'hui nous allons voir comment j'ai fait une vue sous la forme d'un arbre n-aire des hashtags décrits dans Joomla content.

J'entends déjà les puristes d'ici, alors je mets tout de suite mon alerte : oui, je suis absolument nul en javascript, je hais ce langage et je n'ai pas fait d'affichage d'un arbre avec ouverture et fermetures des branches pour ce module (manque de temps). En plus, même si j'avais su le faire, je ne l'aurais pas fait puisque l'idée est bien de proposer à l'utilisateur la possbilité de "naviguer" dans l'arbre des tags, et pour pouvoir intellectuellement naviguer dans cet arbre, il faut afficher toute l'organisation de l'arbre, des synonymes existant. L'unicité des synonymes étant effectuée par le chemin complet du hashtag.

Parenthèse faite, regardons le code. Le principe est de rechercher directement dans la base de données (puisque je n'ai pas trouvé d'objets Joomla avec les données qui m'interessaient, mais peut être y'en a-t-il !) l'ensemble des enregistrements pouvant reformer cet arbre. En analysant les données de cette table, je me suis rendu compte que la table contenait le champ path, champs de type chaine. C'est donc parfait pour faire un tri dessus au moment de la requête SQL, permettant aissi d'avoir un arbre trié.

Pour rappel, une base de données ne trie JAMAIS ses données (d'un point de vue théorique) même si certains moteurs de recherche le font par défaut. Donc la théorie veut que, si je fait 2 appels consécutifs "select * from matable", la théorie fait que les deux ensembles de données peuvent être ordonnés différement.
 
 Un autre commentaire important : dans mon code vous verrez que je sauvegarde dans un fichier html le contenu de l'arbre récupéré. En fait je profite de le faire à chaque fois pour éventuellement l'envoyer à qui me le demande. En aucun cas, cet enregistrement n'est utile dans l'affichage de l'arbre. Mais je ne voulais pas réécrire un module quasi identique juste pour exporter mon arbre des tags en HTML.

 

 

Lu 1738 fois Dernière modification le samedi, 29 janvier 2022 14:52

Tous ces modules présentés ci-dessus sont implémentés sur un intranet non connecté au net. Vous pouvez bien entendu réutiliser les sources et vous apportez des améliorations, dites le moi ca sera avec plaisir que je publierai ou redirigerai vers le vite qui utilise le mon module.

Installation : Pour la plupart des modules développés ici, ne n'ai pas pris (je n'ai surtout pas eu le temps) de mettre en place les système d'installation des modules. Il faut donc les installer en mode développeur.