abouzouzou Posted June 9, 2021 Share Posted June 9, 2021 (edited) Bonjour, je souhaite ajouter dans order-confirmation.tpl une balise javascript de conversion google ads... mais lors de l'ajout de mon code, la valeur des variable est vide alors que c'est utilisé quelques lignes plus haut et fonctionne ! ci join mon code {block name='hook_order_confirmation_2'} <section id="content-hook-order-confirmation-footer"> {hook h='displayOrderConfirmation2'} <!-- Event snippet for ASUC - Achat conversion page --> {literal} <script> gtag('event', 'conversion', { 'send_to': 'AW-XXXXXX/YYYYYYYYYYYYY', 'value': {/literal}{$order.totals}{literal}, 'currency': 'EUR', 'transaction_id': '{/literal}{$order.id}{literal}' }); </script> {/literal} </section> {/block} {/block} tout s'écris mais les 2 valeurs $order.totals et $order.id est vide... le resultat est le suivant dans order confirmation ( a savoir que je rafraichi juste la page de ma commande à chaque fois, mais les valeurs sont bien enregistrées sur le pixel de facebook) une idée ? merci j'ai un module mais je ne veux pas l'utiliser pour des raisons de perf, je devrais ajouter trop de modules au final Edited June 9, 2021 by abouzouzou (see edit history) Link to comment Share on other sites More sharing options...
abouzouzou Posted June 9, 2021 Author Share Posted June 9, 2021 (edited) en fait dans le controller il faut assigner mes valeurs: puis dans le smarty je les reutilise orderCondirmationController.php $this->context->smarty->assign(array( 'HOOK_ORDER_CONFIRMATION' => $this->displayOrderConfirmation($order), 'HOOK_PAYMENT_RETURN' => $this->displayPaymentReturn($order), 'order' => $presentedOrder, 'register_form' => $register_form, 'id_order' => $order->id, 'total'=>$order->total_paid, )); et dans le template order-confirmation.tpl {literal} <script> gtag('event', 'conversion', { 'send_to': 'AW-XXXXXXXX/YYYYYYYYY', 'value': {/literal}{$total|string_format:"%.2f"}{literal}, 'currency': 'EUR', 'transaction_id': '{/literal}{$id_order}{literal}' }); </script> {/literal} ... Edited June 9, 2021 by abouzouzou (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted June 9, 2021 Share Posted June 9, 2021 d'où l’intérêt de passer par un module 🙂 Link to comment Share on other sites More sharing options...
Mediacom87 Posted June 9, 2021 Share Posted June 9, 2021 blague à part pourquoi ne pas simplement mettre dans votre tpl sans déclaration dans le controller le code suivant : 'value': {/literal}{$order->total_paid|string_format:"%.2f"}{literal}, Link to comment Share on other sites More sharing options...
abouzouzou Posted June 10, 2021 Author Share Posted June 10, 2021 (edited) 9 hours ago, Mediacom87 said: blague à part pourquoi ne pas simplement mettre dans votre tpl sans déclaration dans le controller le code suivant : 'value': {/literal}{$order->total_paid|string_format:"%.2f"}{literal}, alors j'ai testé, cela ne fonctionne pas j'ai pas le temps de regarder pourquoi , mais l'order dans le template est un presented_order donc une order modifié, et je pense que la presented order n'a pas ces attributes, d'ou le fait de le faire dans le controller $order = new Order(Order::getIdByCartId((int) ($this->id_cart))); $presentedOrder = $this->order_presenter->present($order); ca appelle use PrestaShop\PrestaShop\Adapter\Presenter\Order\OrderPresenter; Edited June 10, 2021 by abouzouzou (see edit history) Link to comment Share on other sites More sharing options...
abouzouzou Posted June 10, 2021 Author Share Posted June 10, 2021 9 hours ago, Mediacom87 said: d'où l’intérêt de passer par un module 🙂 oui tout a fait en règle générale je prend les modules mais : module google remarketing module google analytics module google ads tracking module google revies module shopping ca commence à faire beaucoup, de plus ces modules font pas mal de requetes donc malgré tou ca alourdi.... en plus tous les js sont des les head (et pas forcement de async, bon la je met pas ma main au feu) en plus pour ma part le plugin ad marketing foncionnait mal ils ont cherché un peu, pas trouvé, et m'ont proposé de les remboursé, puis si on a des events spéciaux à mettre ca fonctionnera pas ia que le classique et aussi faudrait passer par le GTM plugin et la c'est pas si simple, en plus quand on bosse avec une société experte SEA chaque jour est compté ^^ merci en tout cas pour votre réactivité ! toujours au top ca fait plaisir Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now