-1

我正在使用 magento 1.8.1.0 社区版并且我已经注册了广告重定向服务并且需要添加转换跟踪。要添加的代码广告供应(到success.phtml)是这样的:

<script type = "text/javascript">
adroll_conversion_value_in_dollars = <?php echo $total ?>;
adroll_custom_data = {"ORDER_ID": "<?php echo $this->__($this->escapeHtml($this->getOrderId())) ?>"};
</script>

我已将其添加到文件末尾。这不起作用,我的代表说它只适用于企业版(我想不出为什么会这样)。我已经进一步搜索并一直在尝试:

<?php
//Get Order Number & Order Total
$order = Mage::getModel('sales/order')->loadByIncrementId(Mage::getSingleton('checkout/session')->getLastRealOrderId());
$amount = number_format($order->getGrandTotal(),2);
?>

<script type = "text/javascript">
adroll_conversion_value_in_dollars = <?php echo $amount; ?>; //order total
adroll_custom_data = {"ORDER_ID": "<?php echo $this->getOrderId() ?>"};  //    Order Number
</script>

如果我通过 adroll 管理界面添加一个静态转换金额值并尝试测试结帐,那么它会注册转换并使用该静态金额(因此证明通信发生)。如果我没有静态金额,则未注册转换 - 所以这表明实际值没有被传递?

任何人都可以查看该代码是否有问题或知道我如何实现这一点。

** 更新 **

上面的第二组代码正在运行。混淆是因为当我只依赖静态值时,它会立即更新转换。当我删除静态值并依赖订单值的传递时,需要一些时间在后端更新(不知道为什么 - 可能以某种方式作为 cron 处理)但我的值现在“到达”了一段时间足以满足我的需要。

4

1 回答 1

0

不确定这是否是版本差异,但在我的success.phtml模板中我使用Mage::getModel('sales/order')->load(Mage::getSingleton('checkout/session')->getLastOrderId()). 可能值得一试。

您可以尝试的另一个选择是Mage::getModel('sales/order')->loadByAttribute('quote_id', Mage::getSingleton('checkout/session')->getLastQuoteId()).

于 2015-05-21T17:51:58.307 回答