je rejoins Jean le Chauve dans son idée et pousserais même plus loin la logique.
Que crois tu que fais Facebook avec nos photos ?
J'upload une image 1250*1250
il la retaille en 32*32,42*42,600*600,800*800 pour ses besoins et supprime l'original pour gagner de la place
et si demain il a besoin d'un nouveau format il fait comment ?
Le redimensionnement des images doit se faire à la volée. cad si j'ai besoin d'une image au format 32*32, je regarde si dans mon cache, une image au format 32*32 existe, si "pas encore" je vais la générer à partir de l'original. Ensuite de toute façon je renvois l'image 32*32
Ainsi tu n'as pas à te soucier de quel format ton site aura besoin les 15 prochaines années.
Exemple de code issu de l'aide de CGSmartImage (nécessite les lib Jquery +
fancybox dans ton gabarit hein !)
(oublie pas de placer quelques images jpg dans le répertoire /uoloads/album pour le test
Code :
[== Indéfini ==]
<script type="text/javascript">{literal}
jQuery(document).ready(function(){
jQuery('a.fancybox').fancybox();
});
{/literal}</script>
{assign var='files' value='uploads/album/*.jpg'|glob}
{if count($files)}
<div style="width: 100%; height: 150px; overflow: auto;">
{foreach from=$files item='file'}
<a rel='simple_album' class="fancybox" href="{CGSmartImage src=$file filter_rotate=90,0 filter_watermark=1 filter_resize='h,500' notag=1 noembed=1}">
{CGSmartImage src=$file filter_rotate=90,0 filter_grayscale=1 filter_watermark=1 filter_resize='h,150'}
</a>
{/foreach}
</div>
{/if}
déjà test ce code tel quel et constate si ca marche
ensuite tu lis l'aide du module pour comprendre les paramètres de ces 2 lignes de commande (ici $file contiendra le nom du fichier dans la boucle évidement)
{CGSmartImage src=$file filter_rotate=90,0 filter_watermark=1 filter_resize='h,500' notag=1 noembed=1}
{CGSmartImage src=$file filter_rotate=90,0 filter_grayscale=1 filter_watermark=1 filter_resize='h,150'}