0

我正在尝试将跟踪像素集成到 magento 成功页面中。为了测试,我构建了以下代码并将其实现到模板文件夹中 success.phtml 文件中的 > 45 行。实际上变量都是空的。怎么了?

<?php 
<?php 
$lastOrderId = Mage::getSingleton('checkout/session')->getLastOrderId(); 
$order = Mage::getSingleton('sales/order'); 
$order->load($lastOrderId); 
$skus = array(); 
$qtys = array(); 
$amounts = array(); 
foreach ($order->getAllItems() as $item){ 
$skus[$item->getProductId()] = $item->getSku(); 
$names[$item->getProductId()] = $item->getName(); 
$qtys[$item->getProductId()] = $item->getQtyOrdered() * 1; 
$amounts[$item->getProductId()] = $item->getRowTotal() * 100;//or $item->getPrice()*$item->getQtyOrdered();//but this will ignore any applied coupons 
} 
$skuspipe = implode("|", $skus); 
$namespipe = implode("|", $names); 
$qtyspipe = implode("|", $qtys); 
$amountspipe = implode("|", $amounts); 

<!--
OrderID: <?php echo $orderID; ?>
skus: <?php print_r($skus); ?>
names: <?php print_r($names); ?>
qtys: <?php print_r($qtys); ?>
amounts: <?php print_r($amounts); ?>
skupipe: <?php echo $skupipe; ?> 
namespipe: <?php echo $namespipe; ?>
qtyspipe: <?php echo $qtyspipe; ?>
amountspipe: <?php echo $amountspipe; ?>
-->

谢谢!

4

1 回答 1

0

在 Collections 中,Magento 通常只为每个项目加载一种数据存根。

您可以使用加载整个对象

$item->load( $item->getId() );

在每次迭代中。

另外,尝试先调试输出集合,看看是否找到任何项目。

于 2013-05-07T10:22:32.813 回答