magento跟踪像素

时间:2012-06-20 09:38:26

标签: magento tracking

跟踪像素中需要两个变量,需要放在类别,产品信息,购物车和确认页面上。

我设法得到了Prod列表和Prod工作,但是,后两个导致我出现问题。

我可以在购物车中回显sku,但是,产品是可配置的产品,所以它在输出中复制了sku。我正在使用的代码如下:

<?php
// $items = Mage::getModel('checkout/cart')->getQuote()->getAllItems();
$items = Mage::getSingleton('checkout/session')->getQuote()->getAllItems();foreach($items as $item) { echo ''.$item->getSku().'&nbsp;';}
?>

如何将其更改为仅显示一个可配置的SKU?

第二个元素是产品所在的类别名称,任何人对此有任何想法?我尝试了多种变体,但它们要么打破了页面,要么一无所获。

任何帮助将不胜感激。如果有人也可以在确认页面上给我一些如何工作的例子,那就太棒了。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

检查产品的可见性(附加到可配置的简单产品将不可见):

$items = Mage::getSingleton('checkout/session')->getQuote()->getAllItems();
foreach($items as $item) {
    if ($item->getProduct()->isVisibleInSiteVisibility()) {
        echo ''.$item->getSku().'&nbsp;';
    }
}

关于类别名称,产品可以出现在多个类别中,因此我不确定您希望如何处理。此外,您还担心要开始在多个模板文件中复制代码。你会想要考虑把它全部移到一个区块。

无论如何,要获得产品所属的类别名称,至少有一种方法可以做到这一点......

$categoryCollection = $item->getProduct()->getCategoryCollection()
                            ->addAttributeToSelect('name');

    foreach($categoryCollection as $category) {
       echo $category->getData('name') . "<br/>";
    }