Utiliser l'objet de l'environnement : #8

Merged
peetdu merged 2 commits from dev/info_objet into master 2 years ago
Collaborator

Le besoin est de pouvoir surcharger certain service en fonction de la page où l'on se trouve pour des trackers particulier (ex : campagne sur un article spécifique)
on passe donc maintenant dans le code l'objet et l'id afin de pouvoir surcharger la suite

Le besoin est de pouvoir surcharger certain service en fonction de la page où l'on se trouve pour des trackers particulier (ex : campagne sur un article spécifique) on passe donc maintenant dans le code l'objet et l'id afin de pouvoir surcharger la suite
Pierretux added 1 commit 2 years ago
1f87548d87 Utiliser l'objet de l'environnement :
Poster
Collaborator

Bonjour,

Un retour possible ?

merci

Bonjour, Un retour possible ? merci
Pierretux added 1 commit 2 years ago
Collaborator

Yop,

peux-tu founir un service avec ça, que je puisse tester ?

Yop, peux-tu founir un service avec ça, que je puisse tester ?
Poster
Collaborator

L'idée est de faire

tarteaucitron.user.gtagUa = '#CONFIG{tarteaucitron/services/gtag}';
tarteaucitron.user.gtagMore = function () {[
window.gtag('event', 'conversion', { 'allow_custom_scripts': true, 'send_to': '(#INFO_GTAG_EVENT{article,#ENV{id_objet}})' });
]};
(tarteaucitron.job = tarteaucitron.job || []).push('gtag');

Mais après l'utilisateur pourrait surcharger le service sans problème.
Sauf que là sans les info dans le pipeline ont ne peux pas utiliser les API de tarteaucitron complétement.

L'idée est de faire ``` tarteaucitron.user.gtagUa = '#CONFIG{tarteaucitron/services/gtag}'; tarteaucitron.user.gtagMore = function () {[ window.gtag('event', 'conversion', { 'allow_custom_scripts': true, 'send_to': '(#INFO_GTAG_EVENT{article,#ENV{id_objet}})' }); ]}; (tarteaucitron.job = tarteaucitron.job || []).push('gtag'); ``` Mais après l'utilisateur pourrait surcharger le service sans problème. Sauf que là sans les info dans le pipeline ont ne peux pas utiliser les API de tarteaucitron complétement.
Collaborator

Ok, on va tester ça, sans mettre de tag pour l'instant.
Ma réserve sur cette modif c'est le coût en ressources, sachant que le pipeline affichage_final() est appelé à chaque page affichée et que comme dit la doc, il faut être prudent.

Pour la modification du service services/gtag.html, on bouge pas pour l'instant.
Comme c'est facile à surcharger, je pense plutôt à un paragraphe à ce propos dans la doc du plugin.

Ok, on va tester ça, sans mettre de tag pour l'instant. Ma réserve sur cette modif c'est le coût en ressources, sachant que le pipeline affichage_final() est appelé à chaque page affichée et que comme dit la doc, il faut être prudent. Pour la modification du service `services/gtag.html`, on bouge pas pour l'instant. Comme c'est facile à surcharger, je pense plutôt à un paragraphe à ce propos dans la doc du plugin.
peetdu merged commit bee67752b6 into master 2 years ago
peetdu deleted branch dev/info_objet 2 years ago
Collaborator

Mais pourquoi vous utilisez affichage_final ? Il faut absolument que le script soit chargés juste avant </head> ? parce que sinon insert_head

  1. Est pas chargé sur chaque page
  2. Permet de profiter de la compression JS et diminue les hits
Mais pourquoi vous utilisez affichage_final ? Il faut absolument que le script soit chargés juste avant `</head>` ? parce que sinon insert_head 1. Est pas chargé sur chaque page 2. Permet de profiter de la compression JS et diminue les hits
Collaborator

Hello Maieul,

j'utilise affichage_final() parce que dans les exemples fournis dans https://tarteaucitron.io/fr/install/ -> Installation manuelle gratuite, les bouts de code correspondant aux différents services sont placés juste avant le </body>. Bref je fais exactement comme expliqué dans la doc.

Mais si on m'explique que c'est plaçable avant le </head> je suis archi preneur.

Hello Maieul, j'utilise affichage_final() parce que dans les exemples fournis dans https://tarteaucitron.io/fr/install/ -> Installation manuelle gratuite, les bouts de code correspondant aux différents services sont placés juste avant le `</body>`. Bref je fais exactement comme expliqué dans la doc. Mais si on m'explique que c'est plaçable avant le `</head>` je suis archi preneur.
Collaborator

@peetdu il faut lire la doc pour savoir si c'est indispensable ou pas. Ca se trouve ils ont mis cela là par convention...

@peetdu il faut lire la doc pour savoir si c'est indispensable ou pas. Ca se trouve ils ont mis cela là par convention...
Collaborator

après j'ai peur que si vous metteu insert_HEAD, le contexte ca va poser problème, car vous aurez des effets de cache SPIP... donc bon...

après j'ai peur que si vous metteu insert_HEAD, le contexte ca va poser problème, car vous aurez des effets de cache SPIP... donc bon...
Collaborator

Je viens de remarquer deux notices dans l'esapce publique depuis bee67752b6

Notice: Undefined variable: objet in plugins/auto/tarteaucitron/v1.2.7/tarteaucitron_pipelines.php on line 59

et
Notice: Undefined variable: id_objet in plugins/auto/tarteaucitron/v1.2.7/tarteaucitron_pipelines.php on line 59

Pierretux, tu peux y jeter un oeil quand tu as un moment ?

Je viens de remarquer deux notices dans l'esapce publique depuis bee67752b6 Notice: Undefined variable: objet in plugins/auto/tarteaucitron/v1.2.7/tarteaucitron_pipelines.php on line 59 et Notice: Undefined variable: id_objet in plugins/auto/tarteaucitron/v1.2.7/tarteaucitron_pipelines.php on line 59 Pierretux, tu peux y jeter un oeil quand tu as un moment ?
Poster
Collaborator

Peetdu,

Je regarde mais en perso j'ai rajouté de variable, je rajout dans master ou une branche ?

Peetdu, Je regarde mais en perso j'ai rajouté de variable, je rajout dans master ou une branche ?
The pull request has been merged as bee67752b6.
Sign in to join this conversation.
No reviewers
No Milestone
No Assignees
3 Participants
Notifications
Due Date

No due date set.

Dependencies

This pull request currently doesn't have any dependencies.

Loading…
There is no content yet.