0

カテゴリ、製品情報、カート、確認ページに配置する必要があるトラッキングピクセルに必要な2つの変数があります。

ProdリストとProdを機能させることができましたが、次の2つで問題が発生しています。

カート内の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つだけ表示するにはどうすればよいですか?

2番目の要素は、製品が存在するカテゴリ名です。誰かがそれについて何かアイデアを持っていますか?複数のバリエーションを試しましたが、ページが壊れているか、何も返されませんでした。

どんな助けでもいただければ幸いです。誰かが確認ページでもこれらがどのように機能するかの例を教えてくれれば、それは素晴らしいことです。

ご協力いただきありがとうございます。

4

1 に答える 1

1

製品の可視性を確認します(構成可能に接続された単純な製品は表示されません):

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

カテゴリ名に関しては、商品が複数のカテゴリに表示される可能性があるため、どのように処理するかがわかりません。また、複数のテンプレートファイル間でコードが重複し始めているという懸念もあります。これをすべてブロックに移動することを検討する必要があります。

とにかく、ここで製品が属するカテゴリ名を取得することは、これを行うための少なくとも1つの方法です...

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

    foreach($categoryCollection as $category) {
       echo $category->getData('name') . "<br/>";
    }
于 2012-06-20T09:57:02.707 に答える