Salut à toutes et tous,
Après m’être attaqué au
moteur de recherche de l’InfoBrol, et comme je trouve le temps long entre la tétée de Léa de 2Hr et celle de 4Hr du matin, je me suis lancé dans la construction d’un
portail d’actualités.
Pour rester dans le ton, le portail porte le nom pompeux de NewsBrol.
Qu’est-ce que NewsBrol ?
Vous avez la possibilité de consulter des informations d’une multitude de sites
Web en un seul
portail : NewsBrol (https://www.gaudry.be/en/en/newsbrol/ ou http://www.newsbrol.tk).
Le plus souvent, un résumé de l’information est présent, avec ou sans images, mais parfois les articles ou dossiers sont longs, complets et détaillés.
De toute manière, il existe au minimum un lien vers l’article complet.
Exemples d’informations en ce moment :
- actualités proposées par de grands diffuseurs de presse
- 151 flux en informatique, matériel, logiciels, multimedia, etc
- 32 flux dans le monde des télécoms, Internet, Wi-Fi, Hot-Spots, mobiles
- 50 flux en sciences, mathématiques, géographie, climat, santé, etc
- 56 flux en programmation, classement par langage
- 87 flux de culture, cinéma, télévision, livres, bd, beaux arts, musique
- 41 flux pour l’enseignement, l’économie, la politique
Comment est-ce que cela fonctionne ?
J’utilise pour cela les fils d’informations disponibles sur le Web. Il s’agit de
rss, respectant la norme
XML, ce qui fait qu’avec quelques petites fonctions PHP pour
parcing les différentes
tag il est possible d’afficher le contenu dans les pages de NewsBrol.
Ensuite, une fois que la gestion du chargement du fichier, de la traduction des balises, et de l’affichage était réglée, je me suis penché sur la gestion du cache.
J’ai un peu galéré, puis j’ai pompé dans le code des méthodes de la classe cache, et de la classe rss utilisées dans
Magpierss (un code vraiment pas mal pour afficher un contenu RSS en PHP).
Après moultes hésitations, j’ai réglé la durée de validité d’un fichier en cache à 4 Hr, mais j’ai inséré les informations de temps (dernière mise en cache, temps restant avant la prochaine mise en cache), et un bouton pour
recharger immédiatement le fichier dans le cache, pour que le
visiteur qui désire des informations plus récentes puisse en bénéficier.
Vient ensuite la gestion des différents fils d’informations : enregistrements dans la
base de données, collecte d’informations, classement en catégories, recherche des informations à afficher, possibilité aux visiteurs de proposer un nouveau
rss, gestion des erreurs (
) et activation des fils d’information soumise à mon approbation, gestion de l’administration …
Enfin, je me suis penché sur les possibilités pour les membres d’afficher automatiquement une page personnelle par défaut, dans laquelle ils peuvent gérer leurs propres fils d’informations. Chaque membre peut ajouter et retirer des syndications RSS dans son espace, ce qui lui permet d’afficher à chaque visite les informations qui l’intéressent.
En plus…
Je dois encore ajouter (en dessous de la boîte de sélection des fils d’information à afficher) des cases à cocher pour sélectionner ce qui doit être affiché (titres, liens, résumés, contenu, images, nom du rédacteur, catégorie, etc.).
Une sélection du mode d’affichage ne serait pas mal non plus (sur une colonne, sur deux colonnes, …).
J’attends vos remarques et suggestions
A+