Afficher un flux rss via javascript

Consultez la formation SEO spéciale Wordpress
par WebRankInfo / Ranking Metrics


cleden
WRInaute passionné
WRInaute passionné
 
Messages: 1194
Inscription: 6 Jan 2003

Afficher un flux rss via javascript

Message le Mar Mai 16, 2006 13:30

Bonjour,

Je propose sur site de mon www, un flux rss des prochains évènements se déroulant dans la région concernée. Ce site comporte un annuaire qui contient la quasi totalité des sites internet existants sur la région, j'ai donc un public susceptible d'être intéréssé par l'affichage du flux Rss.

J'explique également au travers d'un article, comme intégrer ce flux sur un site existant grâce à Magpierss. Le succès n'est pas vraiment au rendez puisque seul un site utilise mon flux.

Je pense que le fait d'utiliser Magpierss, php et tout le toutim doit en effrayer plus d'un. De plus, la grosse majorité des sites inscrits dans l'annuaire sont en html.

J'aimerai proposer à mes visiteurs d'afficher mon flux rss via un javascript à copier/coller sur leurs pages html (tant pis pour les backlinks). Beaucoup de sites proposent ce service, lamooche par exemple. -http://convert.rss-to-javascript.com permet cela facilement mais je tiens pas à imposer un lien vers un site inconnu.

Etant une bille en javascript, je vous sollicite donc afin de m'aider dans ma tâche. Si vous connaissez un script faisant cela, je vous en serai très reconnaissant ;)

Loïc.

Serious
WRInaute passionné
WRInaute passionné
 
Messages: 2438
Inscription: 21 Nov 2005

Message le Mar Mai 16, 2006 14:52

javascript donc cote client.

Sur ton serveur, tu crees:
1) un script PHP qui convertit a la volee ton flux RSS en HTML (environ 12 lignes)
2) un script Javascript qui cree le code pour une IFRAME pointant vers cette page (environ 7 lignes)

Les sites voulant afficher tes actualites recupereront ou integreront le Javascript dans leurs pages.


cleden
WRInaute passionné
WRInaute passionné
 
Messages: 1194
Inscription: 6 Jan 2003

Message le Mar Mai 16, 2006 15:02

Serious a écrit:javascript donc cote client.
Sur ton serveur, tu crees:
1) un script PHP qui convertit a la volee ton flux RSS en HTML (environ 12 lignes)
2) un script Javascript qui cree le code pour une IFRAME pointant vers cette page (environ 7 lignes)
Les sites voulant afficher tes actualites recupereront ou integreront le Javascript dans leurs pages.

Oui c'est ce que je voudrait (iframe obligatoire ?). Mais seulement, le problème c'est que je ne connais rien en javascript, n'aurais-tu pas une adresse ou récuperer un tel script ?

Loïc.


fandecine
Modérateur
Modérateur
 
Messages: 2185
Inscription: 2 Avr 2005

Message le Mar Mai 16, 2006 15:41

des iframes? beark! :wink:

Tu fais un fchier flux.php comme suit:
Code: Tout sélectionner
      $fichier_xml = "http://www.cap-sizun.com/rss,evenements.xml";
   $nombre_limite = 20;
   $file = fopen($fichier_xml,"r");
   if ($file) {
      while (!feof($file)) $raw .= fread($file,32000);
      fclose( $file );
      if(eregi("<item>(.*)</item>",$raw,$rawitems)){
         $items = explode("<item>", $rawitems[0]);
         $nb = count($items);
         $maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite;
         ob_start();
         echo "document.write('<div style=\"width:260;font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 10px;padding-right:5px;padding-left:5px;color:#000000;text-align:center;background-color:#ffffff\">Les évènements dans le Cap-Sizun</div>');";
         echo "document.write('<div style=\"border:1px solid #000000;width:260px;font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 10px;color:#000000;text-align:left;padding:5px;background-color:#ffffff\">');";
         for ($i=0;$i<$maximum;$i++) {
            eregi("<title>(.*)</title>",$items[$i+1], $title);
            eregi("<description>(.*)</description>",$items[$i+1], $description);
            eregi("<link>(.*)</link>",$items[$i+1], $link);
            eregi("<rm>(.*)</rm>",$items[$i+1], $rm);
            ?>
            document.write('<a href="<?php echo $link[1];?>">');
            document.write("<?php echo $title[1];?></a><br />");
            document.write('<?php echo $description[1];?><br />');
            document.write("<br />");
            <?php
         }
         echo "document.write('<br /></div>');";
         $contenuCache = ob_get_contents();
         ob_end_flush();
      }
   }



Tu adapte ce fichier avec tes propres styles.... :wink: Je l'ai adapté à la louche à ton flux xml.

Ensuite, tu rewrite tout cela du style:
Code: Tout sélectionner
RewriteRule ^flux\.js$ /flux.php [QSA,L]


et hop! Il suffit d'inserrer ceci à l'endroit où l'on veut afficher le flux:
Code: Tout sélectionner
<script language="JavaScript" type="text/JavaScript" src="http://www.cap-sizun.com/flux.js"></script>


Tu peux même aller plus loin en proposant une "customisation" en ligne.
Pour te donner des idées, voici ce que je propose sur le site de mon profil:
http://www.fan-de-cinema.com/partenaire ... cript.html :wink:

Serious
WRInaute passionné
WRInaute passionné
 
Messages: 2438
Inscription: 21 Nov 2005

Message le Mar Mai 16, 2006 16:48

fandecine a écrit:des iframes? beark!


Certes. Mais si le serveur tombe, que va-t'il se passer :D ?


fandecine
Modérateur
Modérateur
 
Messages: 2185
Inscription: 2 Avr 2005

Message le Mar Mai 16, 2006 17:00

Serious a écrit:
fandecine a écrit:des iframes? beark!


Certes. Mais si le serveur tombe, que va-t'il se passer :D ?

8O
:?: :?: :?:

Serious
WRInaute passionné
WRInaute passionné
 
Messages: 2438
Inscription: 21 Nov 2005

Message le Mar Mai 16, 2006 18:54

fandecine a écrit:
Serious a écrit:
fandecine a écrit:des iframes? beark!

Certes. Mais si le serveur tombe, que va-t'il se passer :D ?

:?: :?: :?:


Relis la question initiale. Le flux sera affiche sur d'autres sites. Si le serveur tombe, ca va bloquer/perturber la page. C'est pour ca que Google utilise une IFrame pour les pubs adsense.


cleden
WRInaute passionné
WRInaute passionné
 
Messages: 1194
Inscription: 6 Jan 2003

Message le Mar Mai 16, 2006 23:19

Merci à vous, je suis parvenu à faire ce que je voulais. Merci également au bienfaiteur masqué qui m'a apporté une solution par mail après avoir lu mon message.

En fait, j'ai passé l'après midi à faire un petit outil qui me plait bien.

http://www.cap-sizun.com/cap,flux-rss.html

Ca regroupe tous les flux RSS de mon site et permet à chaque visiteur de copier/coller le code javascript correspondant au flux qu'il veut afficher.

Par ailleur j'ai appris ma première fonction javascript: document.write()
:lol:

Bonne nuit,
Loïc.

RyoSaeba
WRInaute discret
WRInaute discret
 
Messages: 185
Inscription: 16 Mar 2006

Message le Mer Mai 17, 2006 12:27

Vraiment extra, j'aime beacoup ... je vais essayer de l'adapter a mes besoins :)

Bye


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation SEO spéciale Wordpress : apprenez à optimiser le référencement naturel d'un site fait avec Wordpress... Formation Ranking Metrics animée par un expert SEO / Wordpress.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :