15 oct. 2008
Afficher un slideshow de votre galerie Flickr sur votre site
11:31
Jean-Christophe Duvivier
Ajax
Flickr
Internet
Site
Tutoriel
Web
Web 2.0
Inutile de vous présenter ce concentré d'Ajax, la référence du partage d'images personnelles sur le web : Flickr

Les fonctionnalités de ce site sont tout simplement énormes : partage, retouche, classement, géolocalisation de vos photos, ce qui pousse tout internaute, du noob au nerd à se servir de cette outil pour référencer ses photos personnelles.
Le but du tutoriel que je vous propose est d'afficher vos photos Flickr sur votre site et/ou blog personnel. Nous allons pour cela nous servir de l'outil Flickrshow développé par Ben Sekulowicz-Barclay
L'installation de Flickrshow est très simple, tout comme sa configuration.
Préambule :
Il vous faut tout d'abord télécharger le fichier Javascript que vous pourrez trouver ici : http://v6.flickrshow.com/scripts/scripts.js
1ère étape : Mise en Place :
Une simple inclusion dans votre fichier PHP/HTML est nécessaire :
<script type="text/javascript" src="js/scripts.js"></script>
Il vous suffit ensuite d'insérer le code suivant à l'endroit où vous voulez afficher votre slideshow, en remplacant "VOTREALBUM" par l'id de votre album que vous trouverez sur Flickr (dans la barre d'adresse, après avoir doublé-cliqué sur votre album). Il est en principe composé de 17 chiffres et lettres.
<div id="fsDemo" style="height:600px;width:400px;"> </div> <script type="text/javascript"> var cesc = new flickrshow("fsDemo", {flickr_photoset: "VOTREALBUM@N00"}); </script>
2ème étape : Sélection des photos :
L'affichage des photos en fonction de l'album auquel elles correspondent est une chose, mais comment procéder pour afficher toutes ses photos, sans distinction d'album ? Pour cela flickrshow propose différents paramètres :
flickr_photoset : Affiche les photos d'un album précis.
flickr_group : Affiche les photos d'un groupe précis.
flickr_tags : Affiche les photos rattachées à des tags précis (séparez les tags par des virgules lors de la déclaration).
flickr_user : Affiche les photos d'un membre précis.
De plus, il vous est possible de combiner les paramètres "flickr_user" et "flickr_tags" :
var slideshow= new flickrshow("fsDemo", {flickr_tags: "paysage", flickr_user: "jchristophe.d"});
Cela vous affichera donc toutes mes photos portant le tag "paysage".
3ème étape : Modifier l'apparence de Flickrshow :
a. Modifier les couleurs
Ben Sekulowicz-Barclay a développé plusieurs CSS vous permettant de choisir le style de votre Flickrshow parmis différents styles : bleu(blue), vert(green), gris(grey), et rose(pink). Pour sélectionner le thème "green", il suffit de déclarer la variable suivante :
var slideshow= new flickrshow("fsDemo", {flickr_photoset: "VOTREALBUM@N00", theme: "green"});
Si aucune de ces CSS ne vous convient, ou si vous voulez modifier quelques éléments, il suffit de rattacher votre propre CSS, en déclarant, au préalable, la variable suivante :
var slideshow= new flickrshow("fsDemo", {flickr_photoset: "VOTREALBUM@N00", theme: "none"});
Voici la feuille de style (du thème "green") à modifier et à appeler depuis votre squelette pour appliquer votre propre style :
/* WRAPPER ************************************************************************************* */ div.fs { background: #E8E8E8 !important; } /* WRAPPER - LOADING ************************************************************************************* */ div.fs div.fsLoading { background: #E8E8E8 url("http://v6.flickrshow.com/themes/green/al.gif") 50% 50% no-repeat!important; z-index: 500; } div.fsLoaded-0 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-1 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-2 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-3 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important;} div.fsLoaded-4 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-5 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-6 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-7 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-8 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-9 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } div.fsLoaded-10 div.fsLoading { background-image: url("http://v6.flickrshow.com/themes/green/al.gif") !important; } /* WRAPPER - SLIDER ************************************************************************************* */ div.fs div.fsSlider { background: #D1D1D1 url("http://v6.flickrshow.com/themes/green/sl.gif") !important; } div.fs div.fsSliderH { background: #99CC00 !important; cursor: pointer; } /* WRAPPER - BUTTONS ************************************************************************************* */ div.fs ol.fsButtons { background: #E8E8E8; } div.fs ol.fsButtons li { background: #E8E8E8 50% 50% no-repeat; overflow: hidden; text-indent: -999px; z-index: 300; } div.fs ol.fsButtons li.fsButtonA { background-image: url("http://v6.flickrshow.com/themes/green/ip.gif") !important; } div.fs ol.fsButtons li.fsButtonB { background-image: url("http://v6.flickrshow.com/themes/green/ir.gif") !important; } div.fs ol.fsButtons li.fsButtonC { background-image: url("http://v6.flickrshow.com/themes/green/il.gif") !important; } div.fsPlaying ol.fsButtons li.fsButtonA { background-image: url("http://v6.flickrshow.com/themes/green/is.gif") !important; } /* WRAPPER - IMAGES ************************************************************************************* */ div.fs ol.fsImages { background: #D1D1D1; } div.fs ol.fsImages li h2 { color: #2E2E2E !important; font-family: "Lucida Grande", "Helvetica", "Arial", Sans-serif; font-weight: lighter; overflow: hidden; z-index: 200; }
b. Modifier la taille des images
Par défaut, Flickr propose plusieurs tailles pour afficher vos images. Elles sont identifiées grâce à des lettres :
s petit carré 75x75
t miniature, côté le plus long de 100
m petit, côté le plus long de 240
- moyen, côté le plus long de 500
b grand, côté le plus long de 1024 (existe uniquement pour de très grandes images d'origine)
o image d'origine, jpg, gif ou png selon le format source
Il suffit donc d'insérer cette lettre dans la variable principal. Exemple pour une taille miniature :
var slideshow= new flickrshow("fsDemo", {flickr_photoset: "VOTREALBUM@N00", size:"_t"});
c. Modifier la vitesse de changement des images
Il vous suffit d'insérer dans la variable le laps de temps entre l'affichage total de 2 photos. Exemple pour 3 secondes :
var slideshow= new flickrshow("fsDemo", {flickr_photoset: "VOTREALBUM@N00", speed:3});
c. Debug Mode
Flickrshow est doté d'un mode de débuggage afin de permettre à l'utilisateur d'identifier les erreurs en cas de non affichage du Slideshow.
var slideshow= new flickrshow("fsDemo", {flickr_photoset: "VOTREALBUM@N00", debug:1});
N'oubliez pas de désactiver le mode debug si votre slideshow fonctionne.
Et voilà pour ce tuto =) Vous pouvez venir voir le résultat sur ma galerie perso ou sur le site officiel de Flickrshow.
Installer un mini calendrier sur SPIP 1.9.2




Commentaires
Le 29 janv. 2009 à 17:07
Bonjour,
je n'arrive pas à insérer mes photos flickr sur mon site web...Je suis débutante (je précise !!! )
Pourri-ezvous m'aider??
Merci :-)
Le 29 janv. 2009 à 20:04
Salut !
As-tu lu le tuto ? À quel endroit es-tu restée bloquée ? Qu'est-ce-que tu ne comprends pas ? =)
Le 17 fév. 2009 à 14:47
Slt,
Super instructif ce post.
Mon seul problème avec les diaporama de flickr, c'est qu'ils ne tournent pas en boucle. Enfin pas que je sache...
Une idée ?!?
Le 17 fév. 2009 à 20:28
Salut !
Qu'entends-tu par : "les diaporamas de Flickr ne tournent pas en boucle" ?
Le fait que quand on lance le diaporama il revienne automatiquement au début ? Le fait que quand on clique sur "suivant" sur la dernière photo il affiche la première photo ?
Si c'est ça, ces deux fonctions fonctionnent sous flickrshow.
Tu peux aller te rendre dans mes galeries pour t'en rendre compte :
http://galerie.jchristophe.fr
Si je n'ai pas compris ta question n'hésite pas ;)
Le 15 juin 2009 à 15:12
Le lien vers le Javascript ouvre un fichier qui semble ne pas fonctionner... le javascript est bizarre....
Le 25 juin 2009 à 13:00
Il suffit de faire fichier > enregistrer-sous et le script js est sauvegardé ;)
Le 07 août 2009 à 10:51
Salut, je n'arrive pas non plus à afficher mon album. Je n'y connait pas grand chose. Le fichier scripts.js doit être placé au même endroit que le .php sur lequel on veut afficher les slideshow?
Merci d'avance
A+
Le 13 sept. 2009 à 21:27
Salut, merci pour ce tuto ca marche très bien. Il y a seulement une question que je me pose : lorsque j'ajoute de nouvelles photos sur mon album flickr, l'album qui s'affiche sur mon site ne se met pas à jour automatiquement. Même si je supprime les cookies ou que je rafraichis ma page etc... Quoi faire ? Je ne voudrais pas être obligé je refaire le processus à chaque fois pour que les nouvelles photos s'affichent...merci :)
Le 17 sept. 2009 à 16:13
Et en supprimant tout simplement le cache ?
Le 22 sept. 2009 à 00:05
non dsl, j'ai vraiment essayée tout ça mais ça ne fonctionne pas. Le seul moyen que j'ai trouvé c'est de changer le nom de mon album dans mon fichier html pour que l'album en ligne sur mon site s'actualise. C'est un peu long et plate comme processus à faire à chaque fois que j'ajoute une photo dans mon album flickr. Une autre solution ? merci :)
Le 28 déc. 2009 à 09:34
Bonjour,
Même problème que Emilie de mon côté : les mises à jour ne sont pas prises en compte, même après avoir vidé le cache, sauf à modifier le nom de l'album sur Flickr et sur la page html à chaque fois, donc pas pratique du tout.
Par ailleurs, il y a un souci d'encodage des caractères dans la description des photos ...
Vraiment dommage car le principe m'intéressait vraiment pour pouvoir donner la possibilité aux personnes qui ne connaissent pas le code de mettre à jour leur diaporama sur leur site !
Le 03 fév. 2010 à 18:03
Bonjour, merci beaucoup pour ton tuto, bien fichu, il m'a bien aidé.
Cependant j'ai un petit problème :
j'aimerais retoucher les couleur du visionneur moi même, mais quand je copie le code il me trouve une erreur à : "div.fs { background: #E8E8E8 !important; }"...
Alors j'imagine que je ne vise pas comme il faudrait la Div, mais je n'y arrive pas, merci d'avance pour ta réponce !
Le 03 fév. 2010 à 18:37
Salut !
Aurais-tu l'url de ton appli ?