Je suis en train de développer un plugin pour interfacer un SPIP avec Umami (concurrent de Matomo) qui fonctionne sur la même base que Matomo (URL + un id de site). Je rencontre un problème avec le formulaire de configuration :
l’id de website avec Umami est sous cette forme : 2676f2e9-fb38-4c13-beea-d3f6abe7adc3
Je n’ai pas encore tout compris de comment ça fonctionne avec Umami et son script JS mais dans l’idée de plagier Matomo, les deux valeurs sont utilisées comme #CONFIG dans le fichier js.
J’ai l’impression de répondre à côté de la plaque …
A la base je le trouvais moins « usine à gaz » que Matomo, surtout quand tu cherches juste des statistiques de fréquentation d’un site web. Même si dans son évolution il tend vers ces gros machins « tracking full comportement et monetisation »
Je penses pas qu’il y est d’avantage spécialement, je l’utilise parce que ça été un chantier monstrueux pour l’installer sur mon serveur YnH et que maintenant il y est ^^
Je ne vois pas ça comme une limitation mais comme une fonctionnalité puisque ça protége facilement et à faible coût les valeurs des principaux d’arguments d’url. Pourquoi s’en priver ?
Après le commentaire de @JLuc ce matin, et en fouillant dans mes connaissances de SPIP, je me suis dis que c’était une bétise de nommer ce champs id_website.
Depuis ce midi : Plus jamais je ne ferais de formulaire avec un champ id_
Ah ben je découvre aussi…
Ça a été annoncé ?
Et qu’est ce qui motive cette décision ?
C’est peut être une mauvaise pratique pour toi de se croire protégé par cette convention (id_*), je l’entends, mais ça risque d’ouvrir des portes dans plein de plugins ça…
Il y avait eu des discussions orales certainement je pense notamment autour de ces points, et peut être sur les tickets de l’écran sécu, mais
cast id_* en int pose des problèmes :
ça provoquait des problèmes en prepend sur des serveurs sur d’autres logiciels (il y avait des exceptions déjà dans notre code l’ailleurs), donc certains rares id_xxx n’étaient pas castés, ce qui déjà n’était pas clair
c’était pour une époque lointaine où sql_quote ou intval ou (int) n’était pas appliqué partout sur les requêtes SQL
ça empêche des identifiants non numériques, alors que des demandes existaient, et cela créée beaucoup de confusion donc ; pour preuve encore cette discussion donc
ça provoquait des problèmes en prepend sur des serveurs sur d’autres logiciels (il y avait des exceptions déjà dans notre code l’ailleurs), donc certains rares id_xxx n’étaient pas castés, ce qui déjà n’était pas clair
Ça c’est une utilisation pas vraiment standard, quelqu’un qui fait ça devrait savoir comment s’en accommoder.