Présentation
SPGM ou Simple Picture Gallery Manager est un système PHP permettant l’affichage d’une galerie photo. Ce système ne requière aucune base de données installée, seul PHP (supérieur ou égal à 4) doit l’être. Il n’y a cependant aucune interface web pour gérer la collection, tout se fait directement sur le serveur ou, comme la plupart des gens ayant un fournisseur d’accès internet mais aussi d’hébergement, par FTP. Quelques plugins en revanche permettent de gérer à l’aide d’une interface Web, et d’une base de données, le système peut vous être donc plus complet.
Sa simplicité et son efficacité font que SPGM peut être intégré facilement dans un site Web, il est très facile à en comprendre les rouages et ainsi le modifier à notre sauce.
Installation
L’installation est simple :
- Téléchargez SPGM sur le site officiel
- Décompressez l’archive obtenue
- Utilisez :p
Évidemment il vous faut configurer votre serveur Web pour accéder à l’application comme vous le souhaitez. Mais ce n’est pas le sujet de cette page.
Utilisation
Tout est expliqué dans les fichiers suivants (après décompression de l’archive téléchargée par vos soins) :
- Install.txt
- QuickStart.txt
Cependant, voici quelques brèves explications.
La galerie elle - même
Le dossier contenant toutes les images est le dossier gal.
Vous pouvez y déposer les dossiers et images que vous voulez, en prenant le soin de toujours avoir des miniatures affiliées, préfixées de _thb_.
Les miniatures
Comme expliqué ci - avant, chaque image doit avoir son équivalent préfixé de _thb_, pour permettre à SPGM d’afficher des pages plus simple à télécharger (miniatures moins lourdes).
Description de galerie
Pour afficher la description de vos galerie, le dossier de la galerie doit contenir un fichier gal-desc.txt
À l’intérieur, mettez la description de votre galerie, elle s’affichera automatiquement.
Description des images et miniatures
Comme vu précédemment, le système s’applique aux images et aux miniatures. Il faut créer un fichier pic-desc.txt à l’intérieur de la galerie (dans le dossier de la galerie). Voici un exemple de ce que le fichier contient :
_thb_Tux.jpg | Ceci est un commentaire pour la miniature de l'image Tux.
Tux.jpg | Ceci est un commentaire pour l'image Tux.<br />
>Encore une description de Tux.jpg, et maintenant :
>ceci est <a href="http://spgm.sourceforge.net">un lien</a>.
Astuces
Vous remarquerez que l’utilisation, bien que détaillée dans les fichiers Install.txt et QuickStart.txt, il est pénible d’effectuer toutes les tâches soi - même, et à CHAQUE fois !
L’utilisation de scripts est une bonne solution, comme nous le montrerons ici.
On peut aussi aimer avoir quelques informations supplémentaires sur sa galerie, comme le nombre d’images.
Afficher plus que les styles de base
Pour permettre l’affichage des fichiers .jpeg (seuls les .jpg sont affichés) et les fichiers .bmp, il suffit de compléter une ligne dans le fichier spgm.php, à la racine de SPGM. Modifier la ligne 213 (dans ces eaux là), pour obtenir ceci :
$spgm_cfg['global']['supportedExtensions']
= array('.jpg', '.png', '.gif', '.jpeg', '.bmp'); // supported picture file extensions
SPGM devrait désormais s’occuper des .jpeg et des .bmp.
Script, génération miniatures (thumb)
Comme je suis fainéant, et que j’avais plus de 1000 images à importer, je ne voulais pas m’enquiquiner à faire les miniatures, faire les descriptions de galeries, d’images, etc. Travail long et pénible (bien que pour les réels commentaires sur les images, aucun script ne peut le faire à votre place !). J’ai donc concocté un script disponible sur Github , il se nomme parcours.sh.
Pour qu’il fonctionne vous devez avoir :
- un gestionnaire de commandes SH
- le logiciel imagemagick
Mettez ce script où vous voulez. Pour l’utiliser, il vous suffit de taper :
sh parcours.sh /chemin/vers/spgm/gal/
Le script créer les fichiers de descriptions, les miniatures au format 120, etc.
Relancez le autant de fois que vous ajoutez de nouvelles images ou modifiez vos dossiers.
Vérifiez le script et adaptez le à votre cas.
NB : Le script s’occupe des fichiers images suivantes :
- jpg
- bmp
- jpeg
- gif
- png
Par ailleurs le script ne prend pas en compte la suppression d’images, donc il ne supprimera pas les miniatures affiliées, ni les entrées dans les fichiers pic-desc.txt. Si vous vous sentez d’attaque à rajouter cette fonctionnalité, n’hésitez pas à m’en faire part ! Cela pourrait en faire bénéficier plus d’un !
Afficher le nombre d’images dans la galerie
Il peut être intéressant de donner un ordre de grandeur à notre galerie d’images. Voilà pourquoi je me suis dit que dénombrer les images contenues dans SPGM serait utile !
J’ai crée un script SH rapidement pour faire cela. Il se nomme calculPhotos.sh .
Pour en bénéficier, procédez comme suit :
- Téléchargez le fichier
- Placez le dans votre dossier SPGM, plus précisément dans le dossier gal
- Lancez le script :
sh calculPhotos.sh
- un fichier nbrePhotos.txt est crée
- changez le code dans le fichier index.php, après
<td id="center">
en :
<p><span id="title">Ma galerie d'images</span><br />
Contient environ
<?php
if(file_exists('./gal/nbrePhotos.txt')) {
$lines = file('./gal/nbrePhotos.txt');
echo $lines[0];
}
else {
echo "un nombre inconnu d'";
}
?> images.
</p>
Tout devrait fonctionner désormais.
N’hésitez pas à me faire part de vos idées pour améliorer le script, voire à ajouter d’autres fonctionnalités.