Php Prestashop Facebook像素购买集成

Php Prestashop Facebook像素购买集成,php,smarty,prestashop,prestashop-1.6,Php,Smarty,Prestashop,Prestashop 1.6,我试图更改我的order-confirmation.tpl,之后显示出一些错误,我尝试添加facebook像素代码来跟踪订单 我的变化是 我添加了OrderConfirmationController.php $cart = new Cart((int)($this->id_cart)); self::$smarty->assign(array( '_order' => $this->id_order, '_valu

我试图更改我的order-confirmation.tpl,之后显示出一些错误,我尝试添加facebook像素代码来跟踪订单

我的变化是

我添加了OrderConfirmationController.php

        $cart = new Cart((int)($this->id_cart));
    self::$smarty->assign(array(
        '_order' => $this->id_order,
        '_value' => $cart->getOrderTotal()
    ));
之后,我添加我的订单确认.tpl

 <!-- Facebook Pixel Code -->
<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','//connect.facebook.net/en_US/fbevents.js');

fbq('init', 'xxxxxxxxxxxxxx');
fbq('track', "PageView");
fbq('track', 'Purchase', {value: {$_value}, currency: 'USD'}); 
</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=1445570592421898&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code -->

!函数(f,b,e,v,n,t,s){if(f.fbq)返回;n=f.fbq=function(){n.callMethod?
n、 callMethod.apply(n,参数):n.queue.push(参数)};如果(!f._fbq)f._fbq=n;
n、 push=n;n.load=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t、 src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(窗口,
文档,'script','//connect.facebook.net/en_US/fbevents.js');
fbq('init','xxxxxxxxxxxx');
fbq(“轨迹”、“页面视图”);
fbq('track','Purchase',{value:{$\u value},币种:'USD'});
正如你所看到的,我试图用$\u值获得价值

错误是

   Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "/var/www/presta/themes/mytheme/order-confirmation.tpl" on line 43 
"!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?" - Unexpected ".", expected one of: "","" , ")" <-- thrown in 
/var/www/presta/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 43
致命错误:未捕获-->Smarty编译器:模板中的语法错误“/var/www/presta/themes/mytheme/order confirmation.tpl”,第43行

“!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?”-意外“,”中的一个,应为“,”,”,””,“,”我解决了更改该部分的问题,可能有人需要某一天来解决:)

关于订单确认。由于smarty,tpl需要添加{literal}

 !-- Facebook Pixel Code -->
<script>
{literal}
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','//connect.facebook.net/en_US/fbevents.js');

fbq('init', '1445570592421898');
fbq('track', "PageView");
fbq('track', 'Purchase', {value: {/literal}'{$_value}'{literal}, currency: 'USD'});  
</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=1445570592421898&ev=PageView&noscript=1"
/></noscript>{/literal}
<!-- End Facebook Pixel Code -->
!--Facebook像素代码-->
{literal}
!function(f,b,e,v,n,t,s){if(f.fbq)返回;n=f.fbq=function(){n.callMethod?
n、 callMethod.apply(n,参数):n.queue.push(参数)};如果(!f._fbq)f._fbq=n;
n、 push=n;n.load=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t、 src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(窗口,
文档,'script','//connect.facebook.net/en_US/fbevents.js');
fbq('init','1445570592421898');
fbq(“轨迹”、“页面视图”);
fbq('track','Purchase',{value:{/literal}{$\u value}{literal},货币:'USD'});
{/literal}

在Smarty模板中,{和}大括号将被忽略,只要它们被空白包围

因此,只需在每个大括号前后插入一个空格:

<!-- Facebook Pixel Code -->
<script>
!function(f,b,e,v,n,t,s) { if(f.fbq)return;n=f.fbq=function() { n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments) } ;if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s) } (window,
document,'script','//connect.facebook.net/en_US/fbevents.js');

fbq('init', '0123456789012345');
fbq('track', "PageView");</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=0123456789012345&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code -->

!function(f,b,e,v,n,t,s){if(f.fbq)返回;n=f.fbq=function(){n.callMethod?
n、 callMethod.apply(n,参数):n.queue.push(参数)};如果(!f._fbq)f._fbq=n;
n、 push=n;n.load=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t、 src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(窗口,
文档,'script','//connect.facebook.net/en_US/fbevents.js');
fbq('init','0123456789012345');
fbq(“轨迹”、“页面视图”);