2011-04-09 13 views
2

.../template/catalog/product/view.phtmlテンプレートにランダムな商品へのリンクを3つ追加します。Magento - ランダムな商品を追加する.../template/catalog/product/view.phtml

<?php 
    $_productCollection=$this->getLoadedProductCollection(); 
    foreach ($_productCollection as $_randomProduct) { 
    echo $_randomProduct->getProductUrl(); 
    } 
?> 

しかし、私は戻ってURLのリストを取得していないよ:

はlist.phtmlに基づいて、私が追加してみました。他の製品のリンクや画像を取得するにはどうすればよいですか?

+0

magentoデータオブジェクトは、サポート構文 'RAND()'です。 $ productCollection-> getSelect() - > order( 'rand()); – mivec

答えて

3

view.phtmlの$thisがlist.phtmlと同じ$thisではないため、このコードはあなたを停止させます。ランダムこの小さなを取得するには

$_productCollection = Mage::getResourceModel('catalog/product_collection') 
    ->setStore(Mage::app()->getStore()); 

:彼らはどこから来たあなたは気にしなかった場合、代わりに

$_productCollection = $_product->getCategory()->getProductCollection(); 

:あなたは、現在の製品のカテゴリに関連するが、これを試してみてくださいいくつかの製品を取得したい場合は
トリックが役立ちます:

$_productCollection->setPageSize(3) 
    ->getSelect()->order('RAND()'); 

これで、foreachループでコレクションを使用できます。

関連する問題