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

コレクションでは、Magento は多くの場合、各アイテムのデータの一種のスタブのみをロードします。

を使用してオブジェクト全体をロードできます

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

各反復で。

また、最初にコレクションの出力をデバッグして、アイテムが見つかったかどうかを確認してください。

于 2013-05-07T10:22:32.813 に答える