2011-10-14 26 views
0

我需要使用nextag代碼來跟蹤我的賣家儀表板中的銷售情況。 我這裏的例子,但我不知道如何更換變量success.phtmlMagento中的Nextag ROI代碼

<script type="text/javascript"> 
<!-- 
    /* NexTag ROI Optimizer Data */ 
    var id = '3551264'; 
    var rev = '<REVENUE>'; 
    var order = '<ORDER ID>'; 
    var cats = '<CATEGORY1|CATEGORY2|CATEGORY3|...>'; 
    var prods = '<PRODUCT1|PRODUCT2|PRODUCT3|...>'; 
    var units = '<UNITS1|UNITS2|UNITS3|...>'; 
//--> 
</script> 
<script type="text/javascript" src="https://imgsrv.nextag.com/imagefiles/includes/roitrack.js"></script> 

回答

4

既然你需要的訂單後要做到這一點放在你會在結帳時設置所有添加一些代碼您在magento會話中需要的變量。

是不是真的複雜:

#Setting some session values 
Mage::getSingleton('core/session')->setCategories('Cat1|Cat2|Cat3'); 

#Some code to help you get the hang of it 
$categories = ''; 
$products = ''; 
$cart = Mage::helper('checkout/cart')->getCart() 
$items = $cart->getItems(); 

foreach($items as $item){ 
    $catIds = $item->getProduct()->getCategoryIds(); 
    foreach($catIds as $catId){ 
    $cat = Mage::getModel('catalog/category')->getCollection()->load($catId); 
    $categories .= $cat->getName(); 
    } 
} 
Mage::getSingleton('core/session')->setCategories($categories); 

然後在你的JS,你只需要調用使用PHP的變量,當調用Magento的所有success.phtml的PHP代碼將被替換,同樣任何模板工程,很多人不知道你可以在你的JS裏面使用這個東西,所以你可以在裏面放置php代碼。像這樣:

<script type="text/javascript"> 
<!-- 
/* NexTag ROI Optimizer Data */ 
var id = '3551264'; 
var rev = '<REVENUE>'; 
var order = '<ORDER ID>'; 
var cats = <?php echo Mage::getSingleton('core/session')->getCategories(); ?>; 
var prods = '<PRODUCT1|PRODUCT2|PRODUCT3|...>'; 
var units = '<UNITS1|UNITS2|UNITS3|...>'; 
//--> 
</script> 

該代碼並不是完整的解決方案,而是爲了讓您走上正確的道路。

如果您還有其他問題或需要更多幫助,請告知我們。

行,所以你需要的代碼更多的幫助

把你review.phtml

<div class="order-review" id="checkout-review-load"> 
    <?php echo $this->getChildHtml('info') ?> 
</div> 
<?php 
    #Some code to help you get the hang of it 
    $categories = '<'; 
    $products = '<'; 
    $units = '<'; 
    $cart = Mage::helper('checkout/cart')->getCart(); 
    $items = $cart->getItems(); 

    foreach($items as $item){ 
     $units .= $item->getQty() . '|'; 
     $products .= $item->getProduct()->getName() . '|'; 

     $catIds = $item->getProduct()->getCategoryIds(); 
     foreach($catIds as $catId){ 
     $cat = Mage::getModel('catalog/category')->load($catId); 
     $categories .= $cat->getName() . '|'; 


     } 
    } 

    $products = substr($products, 0, -1); 
    $products .= '>'; 

    $categories = substr($categories, 0, -1); 
    $categories .= '>'; 

    $units = substr($units, 0, -1); 
    $units .= '>'; 

    $totals = Mage::getSingleton('checkout/cart')->getQuote()->getTotals(); 
    $subtotal = $totals["subtotal"]->getValue(); 

    Mage::getSingleton('core/session')->setScriptCats($categories); 
    Mage::getSingleton('core/session')->setScriptProds($products); 
    Mage::getSingleton('core/session')->setScriptRevenue($subtotal); 
    Mage::getSingleton('core/session')->setScriptUnits($units); 

?> 

以下而在你的success.phtml結束下面,但我還需要知道哪些單位

<script type="text/javascript"> 
<!-- 
/* NexTag ROI Optimizer Data */ 
var id = '3551264'; 
var rev = '<<?php echo Mage::getSingleton('core/session')->getScriptRevenue(); ?>>'; 
var order = '<<?php echo $this->getOrderId(); ?>>'; 
var cats = '<?php echo Mage::getSingleton('core/session')->getScriptCats(); ?>'; 
var prods = '<?php echo Mage::getSingleton('core/session')->getScriptProds(); ?>'; 
var units = '<?php echo Mage::getSingleton('core/session')->getScriptUnits(); ?>'; 
//--> 
</script> 
<script type="text/javascript" src="https://imgsrv.nextag.com/imagefiles/includes/roitrack.js"></script> 

而且我敢肯定它的工作原理,這裏是我的測試環境的結果:

<script type="text/javascript"> 
    <!-- 
    /* NexTag ROI Optimizer Data */ 
    var id = '3551264'; 
    var rev = '<150.99>'; 
    var order = '<10000034>'; 
    var cats = '<Computers|RAM/Memory>'; 
    var prods = '<Crucial 1GB PC4200 DDR2 533MHz Memory>'; 
    var units = '<1>'; 
    //--> 
    </script> 

乾杯!

+0

我不知道PHP對我來說真的很複雜。其實我是一個.net程序員,但我是一個magento站點的站長,我會很棒如果你告訴我怎麼填寫其他變量。這需要在success.phtml上完成?對? –

+1

當然,今晚我會幫你一點更詳細的代碼。 –

+0

謝謝:)等待吧 –