Aller au contenu

Flux RSS sur mon site!

Featured Replies

Posté(e)

Salut les gars!

Je vais me lancer dans la création d'un site et je voudrais faire un module de news en RSS.

Mais comment faire?

Que faut-il en particulier?

Connaissez-vous des tutos?

Vous auriez des précisions à m'apporter?

Merci ! :up:

Posté(e)
  • Auteur

Merci, mais tu as pas un tuto en français stp!? Car l'anglais j'ai pas un assez bon niveau encore... :up:

Et niveau hébergment il y a besoin d'un truc spécial?

Posté(e)
  • Auteur
si tu veux traiter toi meme les flux, php

Merci mais comment cela?

Car je pourrais aussi faire un module de news en PHP, mais les plus grands sites font en RSS donc voilà... c'est certainement mieux...

Mais je sais pas si j'ai bien compris ta phrase :francais:

Posté(e)

PHP et RSS sont 2 choses distinctes ...

PHP est le langage serveur, qui permet de traiter plein de choses, comme des bases de données (mysql) et des documents xml, à travers les fontions xml

RSS, c'est le document qui reprend les news, les textes du site, selon le paramètrage du cms (souvent) ...

Posté(e)
  • Auteur
PHP et RSS sont 2 choses distinctes ...

PHP est le langage serveur, qui permet de traiter plein de choses, comme des bases de données (mysql) et des documents xml, à travers les fontions xml

RSS, c'est le document qui reprend les news, les textes du site, selon le paramètrage du cms (souvent) ...

Merci pour le tuto, je vais essayer...

@ Agonistic, merci de m'expliquer le PHP :incline: mais je passe un exame dans une semaine sur le PHP alors je te promet que je sais ce que s'est :incline: :incline:

Posté(e)

haaaaaaaaan ok moi je croyais que t'étais un newbie en php :chinois:

cay malin, tu me fais passez pour un débile maintenant :francais:

Posté(e)
  • Auteur
:D, après toutes les extentions FireFox et l'aide aux gens en programmation que tu fais, je pense pas que tu passes pour un débile ;):merci:
Posté(e)

Bonjour,

je cherche depuis quelques temps à créer un fil RSS pour un site, mais impossible de trouver comment en faire un "dynamique".

Je m'explique, tous les tutoriaux que je trouve me montre comment en créer un à mettre à jour manuellement. Moi, j'aimerais que lorsque sur le site je poste une news (système en PHP), le fil RSS soit mis automatiquement à jour. Est-ce possible ?

Posté(e)

il faut que ton système en php regénère le fil rss à chaque plublication, c'est tout ...

maintenant, il faut voir ton système. si c'est un cms, il y a de fortes chances pour que ca soit inclus ou qu'un module y soit dédié.

Posté(e)
  • Auteur

Ah c'est INtéressant! Mais comment faire alors avec du PHP? Car franchement ça doit être la grosse prise de tête à créer... ?

Modifié par mc-sin

Posté(e)

EpiDress> si tu utilises un système de cache, ou si le flux est mise en cache, tu peux vérifier sa date de modification via filemtime, et si la date de la dernière news est supérieure à la date de modification du fichier ordonner la recréation de la cache.

Posté(e)
  • Auteur
EpiDress> si tu utilises un système de cache, ou si le flux est mise en cache, tu peux vérifier sa date de modification via filemtime, et si la date de la dernière news est supérieure à la date de modification du fichier ordonner la recréation de la cache.

Création du cache? Sur le srv?

mais avec "filemtime" ça va prendre la dernière modif de la page ou bien?

Posté(e)

Suppose que ta dernière news ait pour date X (au format renvoyé par time(), ie: des timestamps unix).

Tu vas comparer la date maximale :

$X = (SELECT MAX(news_date) FROM news) (on va dire que tu as fait un mysql_query, et tout le basar associé)

avec celle du fichier cache : (le fichier doit exister de base, mais bon)

$Y = filemtime('rss.xml');

Puis, si tu as :

if ( $X > $Y ) {
 ob_start();
 /* écriture du flux XML en fonction de tes besoins */
 $length = ob_get_length();
 $content = ob_get_flush();
 /* sauvegarde le contenu des echo, et envoie ça au navigateur (évite de rouvrir le fichier ou taper echo $content) */

 /* sauvegarde, et mise à jour de la date de modif */
 if ( ($f = @fopen('rss.xml', 'wb')) ) {
fwrite($f, $content, $length);
fclose($f);
touch('rss.xml', $X);
 }
/* affiche le fichier existant */
} else echo file_get_contents('rss.xml');

Voilà grosso modo comment tu peux gérer la case.

Note bien que là, tu fais deux opérations lourdes :

SELEXT MAX(...)

filemtime()

La première est lourde si la table n'est pas indexée au moins sur le champ DATE (ce qui veut dire pas de B Tree derrière => recherche linéaire)

La seconde est lourde car récupérer des informations sur un fichier n'est jamais bien rapide.

Au sens lourd, j'entend au niveau de php/mysql.

Posté(e)
  • Auteur

Ah en faite tu dois ouvrir et écrire dans le fichier XML, comme si c'était un fichier texte... ?

Posté(e)
  • Auteur
Un fichier XML est un fichier texte.

:francais: , merci,

Je ne le savais pas, j'ai jamais utilisé ! :D

Posté(e)

Ouch...

et bien... l'apprentissage du PHP et la reprogrammation totale d'un site passeront avant le fil RSS ^^"

merci pour vos réponses, je conserve tout ça !

Posté(e)

tu as aussi des "cms" (je sais plus ce que ça veut dire) qui te font ça manu militari...

En même temps, j'ai déjà un système de news, donc je préfère le conserver, et d'y ajouter les flux RSS...

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.