En continuant mes recherches pour l'affichage, sur une même page, de contenus provenant de plusieurs weblogs et pour la création d'un flux RSS "fusionné", j'ai fini par trouver la solution miracle : un script basé sur le couple PHP/MySQL, Feed on Feeds. Feed on feeds permet d'installer, sur son propre serveur, un agrégateur personnel, de choisir les flux auxquels on désire s'abonner et de visualiser, sur une page Web, de manière ante-chronologique les derniers messages publiés sur les weblogs auxquels on s'est inscrit.
Il n'intègre cependant pas de script PHP permettant de générer un fichier RSS "fusionné". Le programmer ne m'apparaissait pas bien difficile et, assez vite, je suis arrivé à la mise en place d'un petit script PHP sommaire réalisant cette fonction.Je pouvais alors passer à la création finale de la maquette demandée dans le cadre de notre projet. Pour ce faire, j'ai crée quatre weblogs fictifs, correspondant aux weblogs que pourraient tenir différentes personnes d'une école :
- le weblog de Mme Duchemin, responsable du service administratif ;
- le weblog de M. Nicolas, responsable du département informatique ;
- le weblog de M. Papin, responsable du département sport ;
- le weblog de M. Lagrange, responsable de la mission culture.
Pour bien montrer que le concept de weblog n'est pas lié à une solution de création, ni à une marque, ces quatre weblogs ont été créés avec quatre CMS distincts (respectivement U-Blog, 20Six.fr, Nucleus et b2).
Enfin, il fallait mettre en place l'agrégateur qui afficherait, sur une seule et même page, le contenu de ces quatre weblogs. Pour ce faire, nous avons installé et personnalisé Feed on Feeds. Ainsi, nous avons apporté quelques modifications de sorte que le fichier index.php se contente d'afficher le contenu des flux agrégés ; nous ne risquons donc pas que le lecteur ajoute ou supprime des flux au contenu déjà agrégé.
L'agrégateur doit être mis à jour régulièrement. Il faut donc exécuter à intervalles réguliers le fichier qui met à jour ses données. Nous avons donc eu recours à Webcron, qui permet d'exécuter automatiquement un script PHP toutes les heures.
Le résultat de cette agrégation, présentant l'Actualité globale de l'Ecole C, est visible à l'adresse suivante : http://planetes.levillage.org/agregateur/
Le flux RSS lié, fusionnant le contenu des quatre weblogs sus-cités est consultable à l'adresse : http://planetes.levillage.org/agregateur/rss.php
J'ai commencé à faire quelques essais pour l'affichage, sur une même page, de contenus provenant de plusieurs weblogs. J'ai débuté les tests sur Joueb, mais, comme je l'ai dit précédemment, je tacherai de les faire aussi sur SPIP ainsi que sur Radio (Jean-Yves m'a expliqué qu'une des boîtes à outils de Radio permettait d'assurer ces fonctionnalités).
En essayant de structurer Galaxies, weblog de test visant à me familiariser avec l'affichage, sur une même page, de plusieurs flux RSS, je me suis rendu compte d'une des difficultés liées au souhait de Jean-Yves : l'affichage des nouveaux messages, non par thème (comme c'est le cas pour le moment où, à chaque weblog est associé un bloc dans lequel apparaissent ses mises à jour), mais par date.
Autrement dit, que l'ensemble s'affiche comme sur Weblogues.com : sur la page d'accueil apparaissent les titres des derniers messages, tous weblogs confondus.
Si tous les fils RSS proposaient une date de publication pour chaque message (c'est le cas des versions 1.0 et 2.0), alors on pourrait classer les messages par date de publication sans trop de problème. Toutefois, beaucoup de flux RSS sont encore, à l'heure actuelle, développés aux formats 0.91 et 0.92 : la date de publication de chacun des billets n'y figure pas !
Les "annuaires/agrégateurs" comme Weblogues.com ont contourné le problème : pour qu'un weblog apparaisse dans la liste des weblogs venant d'être mis à jour, il faut qu'une information (un ping) leur soit envoyé.
Reste que, dans notre cas, nous ne pouvons pas envisager cette solution. Il nous faudra donc réfléchir à une "solution de fortune" ou trouver l'outil miracle.
Il faut aussi que je me penche désormais sur la fusion de plusieurs fils RSS en un seul. Mais Galaxies est un premier pas qui montre qu'en fait, chacun peut facilement créer ce qui constitue, grosso-modo, un agrégateur personnel.
Nous avons pris un peu d'avance sur une des tâches prévues dans notre planning initial puisque nous avons déjà convenu, avec Jean-Yves Stervinou et Alix Potet, de la forme que prendrait la maquette que nous rendrons en fin de projet.
Il s'agira de montrer que les weblogs ne sont pas attachés à un outil, à une "marque". Pour cela, nous présenterons trois ou quatre weblogs différents, développés avec des Content Management System différents.
Et, pour montrer tout l'intérêt de la syndication, nous montrerons comment l'information figurant sur ces weblogs peut ensuite être centralisée sur une seule et même page Web.
Bref, pour ce faire, nous devons trouver un moyen d'exploiter de manière satisfaisante flux RSS pour les afficher au format HTML.
Jean-Yves nous avait indiqué Ampheta Desk, mais ce logiciel refuse de fonctionner sur mon PC (problème de compatibilité avec mon FireWall peut-être ?).
Alors que Christina a commencé les tests des différentes plate-formes de création de weblogs (elle devrait vous en reparler sous peu), j'ai déjà passé environ deux heures à écumer Internet à la recherche de scripts assurant cette fonctionnalité. Force est de reconnaître que, dans la "littérature" francophone, l'internaute est face à un grand vide : j'ai trouvé beaucoup d'articles mentionnant la possibilité d'afficher un flux RSS sur son propre site (ce qui est effectivement l'un des intérêts majeurs de la syndication !), mais guère de textes plus techniques.
Certes, la conception d'un tel programme n'est pas excessivement compliquée, et nous pourrions le développer nous-mêmes. Mais l'un des angles d'approche de ce projet est de montrer qu'"il n'est pas toujours nécessaire de réinventer la roue" ; autrement dit, qu'il est possible de partir d'outils déjà existants pour les personnaliser selon nos besoins.
Devant le vide de documents francophones sur le sujet, j'ai ensuite tourné mes recherches vers le web anglophone. La pêche fut plus fructueuse. Ainsi, il existe plusieurs scripts écris en PERL ou en PHP qui permettent d'afficher le contenu de flux RSS : on peut ainsi citer le script de Creativyst ou encore le script en PHP que Marc Robards présente sur Wireless Developer Network.
Mais, finalement, après quelque temps de réflexion, j'ai eu envie de retourner voir dans SPIP (utilisé l'an dernier dans le cadre d'un projet) quelles étaient les possibilités offertes en matière d'affichage de contenu syndiqué. Quelques très rapides tests ont, à mon sens, donné des résultats plutôt satisfaisants (sur l'affichage, via SPIP, de contenu syndiqué, on pourra se reporter à cet article de SPIPAge ; le site FilInfo est un bon exemple d'application), et surtout prometteur. En manipulant les squelettes de SPIP, nous devrions pouvoir obtenir un résultat satisfaisant.