Discutions : | Forum FR |
---|---|
Téléchargement : | PEM |
Dépôt : | SVN |
Suivi : | Trac |
Version de Piwigo : | Toutes versions ! |
PHP Optimisateur (PO) est un programme développé en PHP permettant de préparer les photos à une mise en ligne via FTP sur Piwigo. L'algorithme principal a été créé par Gotcha pour Batch Optimisateur, il en reprend toutes les fonctions mais son intérêt principal est une plus grande flexibilité vis à vis des plugins. PHP Optimisateur utilise le logiciel NConvert pour le traitement des images.
Les atouts sont… les mêmes que Batch Optimisateur !
Les plus par rapport à Batch Optimisateur :
Pour utiliser PHP Optimisateur il vous faut un serveur web Apache+PHP5. Étant donné les ressources nécessaires au traitement des images il fortement déconseillé de l'utiliser sur un hébergement mutualisé. Préférez plutôt un serveur local tel que WAMP.
Pour installer PO copiez simplement le contenu dans ou sous-dossier du dossier www, htdocs ou assimilé de votre serveur local. Rendez-vous ensuite à l'adresse localhost/nom_du_sousdossier (après avoir lancé le serveur local) puis passez à la configuration.
Utilisateurs de systèmes Unix: Il faut installer le package qui vous convient et remplacer la ligne 273 du fichier include/functions.php de PO par :
exec('nconvert '. $param .' 2>&1', $out);
Utilisateurs de MacOS: Il faut télécharger la version pour MacOS, à placer dans le dossier include et remplacer la ligne 273 du fichier include/functions.php de PO par :
exec('include/' . './nconvert '. $param .' 2>&1', $out);
(merci à ngoc).
La configuration de PO se fait via un formulaire composé de deux parties principales :
Ce formulaire est clair je ne pense qu'il soit nécessaire de détailler, mais n'hésitez pas à poser vos question sur le forum.
Pour utiliser PO il vous suffit de placer vos fichiers et/ou dossiers dans le dossier de sortie que vous avez indiqué dans la configuration, et de cliquer sur Exécuter sur la page principale, les fichiers traités seront bien sur dans le dossier de sortie.
Note : Les dossiers de travail peuvent sans problème se trouver ailleurs que dans le dossier de PO, et même sur un autre disque, veillez simplement à entrer dans références absolues dans la configuration.
PO est globalement aussi rapide que Batch Optimisateur, tout deux fonctionnant avec NConvert, qui prend en charge la majeur partie du processus.
Par exemple sur un Intel Core 2 Quad Q9650 (3GHZ) avec 4Go de mémoire vive et sous WAMP je traite une trentaine d'images en moins d'une minute.
Et 4847 fichiers en exactement 5903 secondes (1h38)
PHP Optimisateur permet d'ajouter des plugins pour étendre ses fonctionnalités, chaque plugins peut se lancer avant traitement des images (mais après renommage si la fonction est activée), pendant le traitement (le plugin est appelé à chaque image) ou à la fin du traitement.
La configuration des plugins se fait sur la zone de droite de la page de configuration.
PHP Optimisateur est fourni avec 6 plugins :
Ceci est pour ceux qui mettent autre chose que des images sur leur site. Le plugin utilise FFmpeg pour générer une miniature pour un certains nombre de formats vidéos. Les autres types de fichiers sont simplement copiés, à vous de gérer les mmimetypes dans votre thème.
A cause du poids du fichier, ffmpeg.exe n'est pas fournit avec PO. Veuillez le télécharger sur le site officiel et le déposer dans le dossier include de PO.
Comme son nom de l’indique peut-être pas très bien ce plugin est chargé de créer une arborescence alphabétique dans le dossier source. Explication par l’exemple. Si j’ai dans mon répertoire source ces trois fichiers :
J’aurais dans le répertoire de sortie :
Le caractère ‘_’ est utilisé comme délimiteur ; ne fonctionne qu’avec les fichiers directement dans le répertoire source (l'arborescence préexistante n'est pas prise en compte).
Ce plugin est une évolution de la fonction copyright de base, il permet de remplacer le texte par une image de votre choix. Le plugin utilise les paramètres de base “Sur les images HD”, “Sur les images normales” et le positionnement.
Ce plugin permet de préparer les panoramas différemment des images normales. Ne touche pas à la version HD
Ce plugin est destiné aux utilisateurs du plugin Piwigo Front2Back qui permet d’avoir des versions alternatives pour les images.
Ce plugin effectue quelques traitements sur les miniatures
Chaque plugin se présente sous la forme d'un sous dossier dans le dossier plugins, le nom de ce sous-dossier est utilisé comme identifiant du plugin, donc évitez les caractères spéciaux. Voici la liste des fichiers de bases, ils seront détaillés plus bas :
Voici l'architecture basique du fichier de configuration. Les paramètre name et mode sont obligatoires.
<plugin> <name>Nom du plugin</name> <mode>Mode de fonctionnement</mode> </plugin>
Le mode définit à quel endroit du processus est inclut le fichier main.php du plugin, les modes sont au nombre de quatre :
Note : Vous pouvez ajouter autant de paramètres que vous le voulez.
<plugin> ... <mon_param> <sous_param>valeur</sous_param> </mon_param> </plugin>
La valeur de sous_param sera accessible dans le plugin via la variable $CONF['Plugins']['mon_plugin']['mon_param']['sous_param'].
Le fichier main.php constitue le cœur de votre plugin.
La page de configuration de PO tente d'inclure ce fichier pour chaque plugin, il permet d'ajouter des champs aux formulaire de configuration.
La structure de base est la suivante :
switch ($PLUGIN_ACTION) { // Affichage simple de la configuration case 'read_config': /* ... */ break; // Actions avant enregistrement case 'save_config': /* ... */ break; // Formulaire d'édition case 'edit_config': /* ... */ break; }
La variable $PLUGIN_ACTION correspond à l'endroit ou est inclut le fichier, sur la page principale, pendant l'enregistrement de la configuration ou sur la formulaire. Consultez les plugins existants pour voir comment l'utiliser.
Votre plugin peut avoir besoin d'afficher du texte, en particulier sur la page de configuration, pour pouvoir afficher les textes en plusieurs langues utilisez le dossier lang dans le dossier de votre plugin. Il doit contenir des fichier php nommé ainsi : [identifiants de la langue].php. Regardez dans le dossier principal des langues pour connaitre les identifiants de langue. Chaque chaine de texte doit être inscrite dans la variable tabulaire $Lang avec un identifiant unique.
Exemple :
<?php $Lang['tag_size.legend'] = "Write '0' to unactive features"; $Lang['tag_size.formats'] = "Formats"; $Lang['tag_size.sizes'] = "Resolutions"; ?>
Enfin pour utiliser vos textes vous devez commencer par charger le fichier de langue avec la fonction load_plugin_lang('mon_plugin');, puis afficher le texte avec l10n('mon_identifiant_de_texte')
Page(s) associé(s) :
MERCI DE NE PAS TOUCHER AUX LIGNES QUI SUIVENT.