flickr
API Flickr, une autre façon de gerer ses photos.
Flickr qu'est-ce ?
Flickr est un site communautaire de photographies récemment racheté par Yahoo. Il permet de stocker et présenter ses photos sans trop de souci.
De nombreux outils permettent d'uploader ses photos rapidement et facilement (par ici).
Flickr met à disposition une API permettant d'utiliser flickr depuis son site web. La documentation de cette API se trouve ici.
Pré requis :
Pour stocker ses photos sur Flickr, un compte Flickr ou Yahoo est indispensable (un compte Yahoo.fr faisant aussi l'affaire). Pour utiliser l'API, il est nécessaire de récupérer une clef d'API en allant sur http://flickr.com/services/api/key.gne. Une fois cette clef obtenue, il suffit d'aller sur http://www.flickr.com/services/api/registered_keys.gne et d'obtenir l'API_secret en cliquant sur "Edit configuration". C'est sur ce même panneau qu'il faut déclarer l'URL de call-back nécessaire à toute authentification.
La classe Flickr :
Flickr propose plus de 70 méthodes, la classe Flickr en implémente quelques-unes. Chaque méthode de cette classe retourne une chaîne XML.
Les classes User, Album et Photo :
Celles-ci stockent les propriétés respectives des users, albums et photos. Avec de nombreuses méthodes ces classes procurent une bonne base d'outils pour la création d'un album photo.
Ces classes fonctionnent indifféremment en PHP4 et PHP5.
Exemple d'utilisation minimale
Les Méthodes
- User:: User - User - Nouvelle instance.
- User::getId - User - Récupérer l'Id de l'utilisateur.
- User::getName - User - Récupérer le pseudo de l'utilisateur.
- User::getRealName - User - Récupérer le nom réel de l'utilisateur.
- User::getLocation - User - Récupérer la localisation de l'utilisateur.
- User::getImgBuddyIcon - User - Récupérer l'avatar de l'utilisateur.
- User::getProfilUrl - User - Récupérer l'url Flickr du profil de l'utilisateur.
- User::getPhotosUrl - User - Récupérer l'url Flickr des photos de l'utilisateur.
- User::getPhotosCount - User - Récupérer le nombre de photos de l'utilisateur.
- User::getAlbumsCount - User - Récupérer le nombre d'albums de l'utilisateur.
- User::getAlbumsList - User - Récupérer la liste des albums de l'utilisateur.
- Album:: Album - Album - Nouvelle instance.
- Album::getId - Album - Récupérer l'Id d'un album.
- Album::getTitle - Album - Récupérer le titre d'un album.
- Album::getDescription - Album - Récupérer la description d'un album.
- Album::getPhotosCount - Album - Récupérer le nombre de photos dans un album.
- Album::getOwnerName - Album - Récupérer le pseudo du propriétaire d'un album.
- Album::getOwnerRealName - Album - Récupérer le nom réel du propriétaire d'un album.
- Album::getOwnerLocation - Album - Récupérer la localisation du propriétaire d'un album.
- Album::getOwnerBuddyIcon - Album - Récupérer l'avatar du propriétaire d'un album.
- Album::getOwnerOtherAlbums - Album - Récupérer la liste des autres albums du propriétaire d'un album.
- Album::getPhotos - Album - Récupérer la liste des photos d'un album.
- Photo:: Photo - Photo - Nouvelle instance.
- Photo::getId - Photo - Récupérer l'Id d'une photo.
- Photo::getSecret - Photo - Récupérer le code d'une photo.
- Photo::getTitle - Photo - Récupérer le titre d'une photo.
- Photo::getDescription - Photo - Récupérer la description d'une photo.
- Photo::getOwnerName - Photo - Récupérer le pseudo du propriétaire d'une photo.
- Photo::getOwnerRealName - Photo - Récupérer le nom réel du propriétaire d'une photo.
- Photo::getOwnerLocation - Photo - Récupérer la localisation du propriétaire d'une photo.
- Photo::getTakenDate - Photo - Récupérer la date de prise d'une photo.
- Photo::getTakenHour - Photo - Récupérer l'heure de prise d'une photo.
- Photo::getExif Infos - Photo - Récupérer les infos Exif d'une photo.
- Photo::getTags - Photo - Récupérer les mots clés associés à une photo.
- Photo::getNextPhotoId - Photo - Récupérer l'Id de la photo suivante d'une photo.
- Photo::getNextPhotoSecret - Photo - Récupérer le code de la photo suivante d'une photo.
- Photo::getNextPhotoTitle - Photo - Récupérer le titre de la photo suivante d'une photo.
- Photo::getNextPhotoImg - Photo - Récupérer l'image thumb de la photo suivante d'une photo.
- Photo::getPreviousPhotoId - Photo - Récupérer l'Id de la photo précédente d'une photo.
- Photo::getPreviousPhotoSecret - Photo - Récupérer le code de la photo précédente d'une photo.
- Photo::getPreviousPhotoTitle - Photo - Récupérer le titre de la photo précédente d'une photo.
- Photo::getPreviousPhotoImg - Photo - Récupérer l'image thumb de la photo précédente d'une photo.
- Album::getImgLarge - Photo - Récupérer la photo grand format.
- Album::getImgMedium - Photo - Récupérer la photo format moyen.
- Album::getImgSmall - Photo - Récupérer la photo petit format.
- Album::getImgThumb - Photo - Récupérer la photo format Thumb.
- Album::getImgSquare - Photo - Récupérer la photo format vignette.
- Flickr::Flickr - Flickr - Nouvelle instance.
- Flickr::peoplegetPublicPhotos - Flickr - People : Récupérer les photos publiques d'un user.
- Flickr::peoplegetInfos - Flickr - People : Récupérer les infos d'un user
- Flickr::photosgetRecent - Flickr - Photos : Récupérer les photos récentes.
- Flickr::photosgetInfo - Flickr - Photos : Récupérer les informations générales d'une photo.
- Flickr::photosgetExif - Flickr - Photos : Récupérer les informations Exif d'une photo.
- Flickr::photosetsgetList - Flickr - Photoset : Récupérer les albums d'un user
- Flickr::photosetsgetInfo - Flickr - Photoset : Récupérer les informations d'un album.
- Flickr::photosetsgetPhotos - Flickr - Photoset : Récupérer les photos d'un album.
- Flickr::photosetsgetContext - Flickr - Photoset : Récupérer les photos précédentes et suivantes.
- Flickr:: getAuthUrl - Flickr - Auth : Récupérer une Url d'authentification.
- Flickr:: getFrobToken - Flickr - Auth : Récupérer un code d'authentification.
Exemples
- Exemple : Informations sur un user.
- Exemple : Afficher les photos d'un album.
- Exemple : Afficher une photo.
Exemple : Afficher une photo.
require('classFlickr.php');
// Paramètres API :
$apiKey = '12345_API_KEY_67890';
$apiSecret = '12345_API_SECRET_67890';
// Id de la photo :
$photoId = '54862325';
//Id de l'album :
$albumId = '1188861';
// Nouvelle instance de Flickr :
$flickr = new Flickr( $apiKey , $apiSecret );
// Nouvelle instance de Album :
$photo = new Photo( $flickr , $photoId , $albumId );
// Affiche titre et description de la photo
echo $photo->getTitle() , ' : ' , $photo->getDescription() , '<br />';
// Affiche la photo format moyen
echo $photo->getImgMedium(), '<br />';
// Affiche le propriétaire
echo 'Un photo de ' , $photo->getOwnerName() , '<br />';
?>