Bonsoir,
je ne suis pas tout à fait sur d'être dans la bonne catégorie pour ma question. Les modérateurs déplaceront mon message si nécessaire.
Bref je voudrai ajouter de nouvelles propriétés à mes albums (pour le moment il y a seulement le nom, description, commentaire et verrouillage). Sans parler des modifs à faire dans la base de données, je cherche pour le moment uniquement le fichier à modifier pour créer mes nouveaux masques d'entrées. Quelqu'un peut-il me renseigner ? Peut-être existe il déjà des plugins disponibles à cet effet?
En modifiant la stucture de ma table dans ma basse de données, je risque de n'être plus compatible avec de futures mise à jours non ?
Merci pour toutes vos réponses éclairées !!
Sébastien
Hors ligne
Bonjour
commencez déjà par dire qu'est-ce que vous voulez ajouter
ensuite pour justement etre compatible avec les prochaine versions, il faut faire un plugin
doc incomplète ici http://fr.piwigo.org/doc/doku.php?id=pr … nt:plugins
exemples concrets ici http://piwigo.org/svn/extensions/skeleton/tags/2.5/ (il y a tout : les triggers, les préfiltres, l'ajout de champs à la bdd, etc)
Hors ligne
Merci pour la réponse. Je vais aller lire un peu tout ça. L'idée pour le moment et d’ajouter une seule propriété à l'album, dans mon cas un lien vers une entrée d'une autre bdd contenant d'autres informations.
Je m'attaque à la documentation, et puis je reposerai mes questions plus tard, en tentant d'être un peu plus clair :)
Hors ligne
Hello tout le monde,
bon j'ai passé quelques heures à lire de la doc, à regarder des exemples ... j'ai beau avoir de bonnes connaissances en php et tout le reste, je me rend tout de même compte que Piwigo est devenu une grosse machine, et qu'on ne peut pas tout comprendre du jour au lendemain :)
Du coup je vais y aller tranquillement par étapes, le temps d'assimiler le fonctionnement de tout ca.
La première chose que je veux faire, c'est ajouter des propritétés à mes albums. Comme vous pouvez le voir, mon site est une site de photos de wagons. Je veux pouvoir ajouter pour chaque album les propriétés suivantes: date de fabrication, et fabricant.
Il se pose tout d'abord la question de savoir si j'ajoute cette propriété à l'abum ou aux photos elles même. Je préfererai que cela soit une propriété de l'abum.
Voici l'orde des actions à mener:
1- Modifier le formulaire d'entrée des informations dans le menu admin
2- ajouter les champs à la base de données
3- modifier la requete SQL pour pouvoir enregister les nouvelles données
4- Affichage des données avec les nouvelles informations pour les utilisateurs.
On commence par le point 1: cela semble le plus simple ... mais j'ai déjà une question :(
Il faut que je modifie le fichier admin\themes\default\template\cat-modify.tpl afin d'étendre le formulaire à mes nouvelles entrées (2 nouvelles balises INPUT). Or je ne peux éditer et dupliquer ce fichier à partir de mon "Local File Editor". Quelle autre possibilité ai-je ?
Je pense éventuellement écrire un blog pour expliquer mes modifications, afin que cela puiss éventuelement aider d'autres personnes. Y voyez vous un inconvénient ?
Hors ligne
Ok, je pense voir comment faire:
->event handler sur l'action désirée qui renvoie vers un prefiltre modifiant ma section admin. J'essaie ca ce soir. Merci !
Petite question encore sur le event handler .... quel event dans mon cas ? Existe t'il une liste de tous les events ?
Hors ligne
j'aurais du vous donner le lien vers la doc anglaise qui a des infos plus correctes http://piwigo.org/doc/doku.php?id=dev:e … ns:plugins (voir la fin du paragraphe Plugin architecture)
à noter aussi que trigger_notify = trigger_action et trigger_change = trigger_event
Hors ligne
Perso je te conseils de regarder comment font les plugin qui agissent sur ces pages ;-)
Hors ligne
J'ai déjà regarder sur la doc en Anglais ... effectivment c'est un peu plus détaillé.
D'autre part j'étudie avec attention l'exemple de mistic100 l'adrsse suivante http://piwigo.org/svn/extensions/skeleton/tags/2.5/
. Ca devrait aller. Du moins pour le point numéro.
Bon .. il n'est pas dit que je ne pose pas d'autres questions ;)
Et puis comme dit précedemment, je vais faire un blog pour expliquer un peu toutes les modifs que j'apporte à Piwigo. Ca pourra éventuellement être utile à quelqu'un d'autre.
Dernière modification par djizzio (2014-02-20 12:54:22)
Hors ligne
Voila, c'est fait ... c'était finalement assez simple ! (voir image attachée).
Avant d'aller plus loin, je dois d'abord limiter ce nouveau formulaire à certaines catégories. Pour cela il faut que je puisse accéder aux variable suivante de cat_modifiy.tpl:
- $INTRO (en fait ce qui m'intéresse c'est surtout le nombre de photos dans la catégorie)
- $CATEGORIES_NAV
Il y a t'il un moyen d'acceder à ses variables ?
Merci !
Dernière modification par djizzio (2014-02-21 22:36:41)
Hors ligne
djizzio a écrit:
- $INTRO (en fait ce qui m'intéresse c'est surtout le nombre de photos dans la catégorie)
Bonjour,
je ne sais pas ce que tu veux récupérer mais si $INTRO est dans le template dans ton fichier php
global $template;
$jeveuxINTRO = $template->get_template_vars('INTRO');
Hors ligne
Bonjour
dans $INTRO tu as la phrase complète -> Cet album contient X photos, ajoutées le Y
maintenant si tu veux le nombre de photo de l'album il est plus simple de faire une petite requête du genre
$query = '
select COUNT(DISTINCT(image_id)) AS C
FROM ' . IMAGE_CATEGORY_TABLE. '
WHERE category_id = '.$_GET['cat_id'].'
;';
$result = pwg_query($query);
edit : update requete
Dernière modification par ddtddt (2014-02-21 23:18:43)
Hors ligne
A nouveau merci pour les réponses ultra rapides. Je ne suis pas aussi rapide. Non pas que j'ai besoin d'heures pour coder tout ça, mais j'ai d'autres obligations dans la vie ... on est 5 dans la famille ;) Il ne me reste que les soirs pour modifier mon site.
Bref tout marche, j'ai du me battre un peu avec les event handler, j'ai mis un petit bout de temps à comprendre que je n'aurai accès au variables du template qu'a partir de loc_end_cat_modify et non pas loc_begin_cat_modify. Et puis j'ai du jouer un peu avec le priorités des event handler après avoir vu qu'un autre plugin inserait un autre formulaire avant le mien.
Juste une question sur la requête que ddtddt m'a donné: je ne comprend pas très bien d'où sort la table $_GET dans $_GET['cat_id'].
Sinon je vais m'attaquer maintenant au point numéro 2: modification de la table dans la base de donnée et récuperation des données. Je poserai mes questions demain, je vais d'abord étudier l'exemple Skeleton et dormir un peu ;)
Hors ligne
c'est une superglobale PHP
http://www.php.net/manual/en/language.v … lobals.php
ça m'étonne que vous ne connaissiez pas, c'est un des premiers trucs qu'on apprend, à part si vous apprenez sur le tas, auquel cas je conseille la lecture de l'excellent tuto sur openclassrooms si vous avez le temps :)
Hors ligne