Extensions et tutorials gratuits disponibles sur internet pour Dreamweaver. PHP et ASP. Classement thématique. Blog référencé par Adobe Communauté Dreamweaver. Un peu de philosophie.

Dreamgratuit - Philosophie

Créer un lecteur de flux RSS avec Dreamweaver et PHP / MySQL

25 mai 2008 | Posté par caroder à 11:59

Bookmark and Share

Vous désirez intégrer le contenu de sites tiers au sein de votre site via les flux RSS proposés par ces derniers ? Pour cela, il vous faut « parser » le flux RSS. De nombreuses classe PHP vous offrent cette possibilité (par exemple Magpierss : http://magpierss.sourceforge.net/ ) mais vous ne pourrez bénéficier des fonctionnalités graphiques de Dreamweaver.

Tecnorama (grâce lui soit rendue !) propose une extension gratuite permettant d’intégrer un flux RSS externe au sein de vos pages. Vous pouvez la télécharger ici : http://www.tecnorama.org/descargas/descargar.php?archivo=rss_reader_130.mxp

Vérifiez tout d’abord via la fonction < ?php phpinfo() ?> que le module XML est bien activé chez votre hébergeur et dans votre environnement de développement. Vous devez ensuite vous assurez dans que les éléments suivants sont à On :

allow_url_fopen
allow_call_time_pass_reference

Installez l’extension RSS Reader et redémarrez Dreamweaver pour qu’elle prenne effet. Un nouvel onglet apparaît maintenant dans votre barre ainsi qu’un nouvel item dans le panneau des comportements serveur.

reader1

Dans la page où vous souhaitez installer le lecteur, procédez comme suit :

1. Définir la source xml du flux à afficher dans la page
Cliquez sur New RSS Channel ou la petite icône équivalent dans l’onglet. Donnez un nom au flux et renseignez l’URL du flux. Mémorisez le nom du flux qui sera réutilisé.

reader2

2. Préparez le design de l’affichage du flux RSS
Voici le code du design CSS que j’ai créé pour afficher mes propres flux.

La feuille de style :
<style media="screen" type="text/css">
body {
      font: 11px Arial, Helvetica, sans-serif;
      color:#666;
}
ul {
      padding: 0;
      margin: 0 12px;

}
li {
      margin: 7px 0;
      list-style-type:none;
      padding-left: 20px;
      background: url(img/fleche-bleue.png) no-repeat 0 4px;
      line-height:15px;
}

li a {
      color: #000;
      text-decoration:none;
}
li a:hover {
      color: #f60;
      text-decoration:none;
}
#widget {
      border: 1px solid #01B5D5;
      width: 250px;
      overflow: auto;
      height: 350px;
}
.w {
      background-color: #01B5D5;
      color: #fff;
      font: bold 1.4em Georgia, "Times New Roman", Times, serif;
      margin:0;
      padding: 5px 10px;
      width: 232px;
}
.wbis {
     margin: 0;
      background-color: #01B5D5;
      color: #fff;
      padding: 3px 10px;
      width: 232px;
}
</style>

Le code HTML :
<h1 class="w">Dernières infos de monsite.com</h1>
<div id="widget">
<ul>
<li></li>
</ul>
</div>
<h2 class="wbis">Plus d'informations sur <a href="
http://www.monsite.com">www.monsite.com</a></h2>

Attention : l’encodage de votre page doit être UFT-8 pour que le flux s’affiche correctement.

3. Intégrez les variables PHP permettant l’affichage des éléments d’item via le panneau de comportement serveur ou les icônes de l’onglet.

reader3

Pour ma part, je souhaitais la date, le titre, l’auteur, la catégorie. Par ailleurs je ne voulais pas de la date au format « brut » mais un format plus lisible par un internaute français.

J’ai donc du modifier le code comme suit. Pour la date :
$this->pubDates[]=trim(date("d/m/Y",strtotime($this->pubDate)));

Pour les catégories, déclarez la variable $category en haut de page :   
var $category="";
Puis dans la fonction startElement, intégrez la ligne :
$this->category="";
Dans la fonction endElement :
$this->categorys[]=trim($this->category);
Enfin dans la fonction characterData :
case "CATEGORY":
$this->category.=$data;       break;

5. Créez le lien vers le site d’origine via l’élément RSS Item Go to Detail Page du panneau de comportement.

6. Créez une région répétée via l’élément RSS Item Repeated Region du panneau de comportement.

C’est prêt. Il n’y a plus qu’à tester dans votre navigateur !

Catégorie : RSS / XML | Permalien [#] | Tags : ,