Dernières photos de Flickr grâce à la puissance de RSS

Voici comment je suis arrivé très simplement à mettre les dernières photos de mon espace Flickr sur la première page de mon site.

Premièrement, il faut récupérer le contenu du fichier RSS distant. Le fil RSS de mes photos se trouve à l’URL http://www.flickr.com/services/feeds/photos_public.gne?id=71455873@N00&format=rss_200.Vous trouverez l’URL de votre fil RSS tout en bas de votre page principale (par exemple http://www.flickr.com/photos/vincentbattaglia/) caché derrière le lien RSS 2.0. Pour récupérer le contenu du fil RSS, j’utilise le logiciel libre MagpieRSS de cette manière :

$num_items sert à spécifier le nombre de photos que l’on veut afficher. Moi j’ai choisi 6 mais c’est libre bien entendu.

Je récupère de cette façon trois choses :

  • le lien vers la page de la photo (link)
  • le titre de la photo (title)
  • le lien vers la miniature de la photo (mini)

Pour la miniature, j’ai du chipoter un petit peu. En effet, un manquement de MagpieRSS fait que l’on ne sait pas récupérer la valeur des attributs d’un fil RSS ! Or, l’URL de la miniature se trouve dans l’attribut url du tag <media:thumbnail/>. J’ai donc du prendre le contenu du tag <description/> et le traîter de la façon suivante :

» Afficher le code source

Je prends en fait l’URL qui est à l’intérieur de ce tag et je remplace le _m.jpg par le _s.jpg pour obtenir la plus petite des miniatures.

Toutes les informations utiles pour afficher le résultat se trouve dans l’array $thumbs. Vous pouvez afficher le résultat en faisant un foreach sur cet array. Personnelement, j’utilise Smarty et donc je l’affiche de la façon suivante :

» Afficher le code source

Bonne chance !

5 Comments

  1. Unknown's avatar jerometahiti says:

    Merci pour ces différents liens !

    Like

  2. eMeRiKa's avatar eMeRiKa says:

    Yeah faisait une demi heure que j’était sur google à rechercher comment récupérer l’attribut de et je commençais à me pencher sur comment récupérer via l’url dans description et là ma solution apparait. Merci beaucoup, par contre pourquoi utiliser MagpieRSS alors que php5 propose simplexmlloadfile en natif 🙂

    Like

  3. vinch's avatar Vinch says:

    Je préfère MagpieRSS qui renvoie de vrais Array à SimpleXML qui te renvoie un objet spécial SimpleXML. De plus, je pense que quand j’ai voulu réaliser cela, mon hébergeur n’acceptait pas encore PHP5, donc pas de SimpleXML…

    Like

  4. maman's avatar maman says:

    merci pour ces liens

    Like

  5. grossesse's avatar grossesse says:

    Informations intéressantes. Bonne astuce =).

    Like

Leave a reply to grossesse Cancel reply