Ceci est une ancienne révision du document !
Retrouvez ici tous les changements techniques pour la version 2.4, notamment les changements susceptibles d’intéresser les créateurs d'extensions, ainsi que les utilisateurs lambda ayant créé leur plugin perso, un template, leur thème perso…
Pour plus d'infos en anglais : http://piwigo.org/forum/viewtopic.php?id=18582
résumé : il est devenu important de séparer le dossier local/, qui contient les fichiers de personnalisation à sauvegarder, et le dossier _data/ qui contient les fichiers temporaires tels les CSS et js combiné et minifiés, ainsi que le cache des images retaillées à la volée.
Principe : les images originales ne sont pas touchées et placées dans /galleries/ ou /upload/ selon la méthode d'envoi utilisée. Dans l'administration, la page “Configuration > Options > Tailles de photo” regroupe les tailles 'officielles' disponibles aux utilisateur pour chaque image. Les images redimensionnées sont placées dans le dossier _data/i/. Quasiment toutes les références Php ou Smarty aux url, chemins, tailles… des images (miniatures ou non) sont à mettre à jour pour Piwigo 2.4.
NB : un dérivé = un ensemble d'info pour retailler suivant une taille (hauteur, largeur, recadrage…)
get_thumbnail_location - supprimé
get_thumbnail_path - supprimé
get_thumbnail_url - déprécié(sera supprimé pour la 2.5) - utilisezDerivative_Image::thumb_url
get_high_location, get_high_path, get_high_url - supprimé
get_image_location - supprimé
get_image_path - supprimé- utilisez( new SrcImage($infos) )→get_path()
get_image_url - supprimé- utilisez( new SrcImage($infos) )→get_url()
file_path_for_type - supprimé
NB :pour une liste des fonctions ajoutées, voyez le paragraphe En pratique comment faire ?
get_mimetype_location (remplace get_thumbnail_location)
comment mettre à jour vos .tpl :
pour définir une taille d'image, à partir d'une taille 'officielle' existante : {define_derivative name='NOM' type='TYPE'} où NOM est le nom du dérivé à définir (à utiliser par la suite avec $pwg→derivative($NOM, $src-image) ), et TYPE correspond au dérivé déjà existant. TYPE peut avoir les valeurs suivantes : square, thumb, 2small, xsmall, small, medium, large, xlarge, xxlarge.
Rappel : les tailles correspondant à ces dérivés sont définis et modifiables sur la page “Configuration > Options > Tailles de photo”.
pour définir un nouveau dérivé : {define_derivative name='NOM' width='LARGEUR' height='HAUTEUR' crop=true/false min_height='HAUTEUR_MIN' min_width='LARGEUR_MIN'} où NOM est le nom du dérivé qui est créé (à utiliser par la suite avec $pwg→derivative($NOM, $src-image) ), LARGEUR et HAUTEUR sont requis et doivent être des valeurs numériques, le paramètre 'crop' est optionel (recadrage, par défaut false), et les paramètres min_width et min_height sont aussi optionnels (valeurs numériques)
pour obtenir l'url d'une image retaillée selon le dérivé NOM : {$pwg→derivative_url($NOM, 'image source')} OU {assign var=mon_dérivé value=$pwg→derivative($NOM, 'image source')} et {$mon_dérivé→get_url()}
Listes des fonctions nouvelles, à utiliser ainsi {$mon_dérivé→fonction()} :
get_path() retourne le chemin vers l'image redimensionnée
get_url() retourne l'url de l'image redimensionnée
same_as_source() retourne vrai si l'image retournée est la même que l'original
get_type() retourne 'Orignal' ou 'Type' où type prend les valeurs parmi 'square', 'thumb', '2small', 'xsmall', 'small', 'medium', 'large', 'xlarge', 'xxlarge' et'custom'
get_size() retourne la taille de l'image redimensionnée dans un tableau : Array { 'LARGEUR', 'HAUTEUR'}
get_size_htm() retourne la chaîne 'width=”'.$size[0].'” height=”'.$size[1].'”'
get_size_hr() retourne la chaîne $size[0].' x '.$size[1]
get_scaled_size($maxw, $maxh) a besoin comme argument de la largeur max et la hauteur max, et retourne les nouvelles dimensions dans le cas d'un redimensionnement à l'échelle.
get_scaled_size_htm($maxw=9999, $maxh=9999) retourne la chaîne 'width=”'.$size[0].'” height=”'.$size[1].'”' où le tableau $size correspond aux dimensions retournées par get_scaled_size($maxw, $maxh)
is_cached() retourne vrai/true si l'image redimensionnée existe déjà (dans le cache _date/i/) ou faux/false si l'image redimensionnée a besoin d'être créée via i.php
Liste des fonctions disponibles comme fonction smarty cad {$pwg→function($NOM, 'image source')}
Ce n'est plus admin.php?page=cat_modify&cat_id=1234, mais admin.php?page=album-1234 désormais
Pour admin.php?page=cat_perm&cat=1234, utilisez admin.php?page=album-1234-permissions désormais
.thumbnailCategories est renommée en .commentsList
.thumbnailCategory est renommée en .commentElement