Exploiter le contenu de $pwg_event_handlers
Cf. http://code.piwigo.org/repositories/ent … nc.php#L43
Contient les points d'ancrages et les fonctions à solliciter.
http://code.piwigo.org/repositories/ent … nc.php#L63
Tri dès l'ajout d'une nouvelle fonction à solliciter.
http://code.piwigo.org/repositories/ent … c.php#L141
ou
http://code.piwigo.org/repositories/ent … c.php#L181
Les appels.
Si tu fais un var_dump($pwg_event_handlers['loc_end_index']);
par exemple:
array(2) {
[50]=>
array(1) {
[0]=>
array(2) {
["function"]=>
string(13) "rvm_end_index"
["accepted_args"]=>
int(1)
}
}
[95]=>
array(1) {
[0]=>
array(2) {
["function"]=>
array(2) {
[0]=>
&object(language_controler)#1 (0) {
}
[1]=>
string(6) "_flags"
}
["accepted_args"]=>
int(1)
}
}
}
Dans ton footer.tpl
{php}
global $pwg_event_handlers;
var_dump($pwg_event_handlers['loc_end_index']);
{/php}
Bonsoir à tous.
Pour l'essentiel, tout est dans le titre et fait suite à topic:16444 pour lequel je patauge...
Les plugins sont de plus en plus nombreux (et c'est une très bonne chose). Mais l'utilisation conjointe d'un même trigger par deux ou plusieurs plugin peut poser des problèmes de priorité des uns par rapport aux autres. J'ouvre donc un topic spécial destiné à apporter une réponse (que je n'ai pas !) pour l'ensemble de la communauté des développeurs de plugins pour Piwigo.
Bien entendu, la synthèse de ce qui sera rapporté ici donnera lieu à une explication détaillée et globale dans cette page du wiki.
Je expose ici, brièvement, mon problème personnel à titre d'exemple :
Le plugin NBC_UserAdvManager permet d'envoyer un certain nombre d'emails dont le contenu est personnalisable et (en théorie) variable en fonction de la langue de l'utilisateur destinataire grâce à Extended Description. Seulement, malgré les balises [lang] correctement positionnées, le contenu des mails arrive toujours en anglais (langue par défaut) sans tenir compte de la langue du destinataire.
La gestion de l'affichage de la langue de galerie et, par extension, de l'utilisateur est géré par le plugin Language Switch.
Il y a probablement un problème de priorité d'un plugin par rapport à l'autre. Mais comment connaitre l'ordre d'exécution ? Et comment faire pour modifier cet ordre (par exemple, que UserAdvManager appelle certains triggers après les autres plugins) ?