2013-02-09 66 views
0

我卡在这里。客户想要在产品详细信息页面(产品追加部分)中随机显示产品。我选择不使用内置的追加销售功能,原因有很多,但没有必要讨论这一点。在产品详细信息页面上调用产品型号覆盖默认产品

我目前显示随机产品,像这样:

<?php 

    $category = Mage::getModel('catalog/category')->load(9); 
    $products = Mage::getModel('catalog/product') 
     ->getCollection() 
     ->addCategoryFilter($category) 
     ->load(); 

    foreach ($products as $product) { 
     $result[$product->getId()] = $product; 
    } 

    $_product = Mage::getModel('catalog/product')->load(array_rand($result, 1)); 

?> 

<a href="<?php echo $_product->getProductUrl(); ?>" title="<?php echo $_product->getName(); ?>"> 

    <img src="<?php echo $this->helper('catalog/image')->init($_product, 'thumbnail')->resize(190); ?>" /> 

    <?php echo $_product->getName(); ?><br /> 
    <?php echo Mage::helper('core')->currency($_product->getPrice()); ?> 

</a> 

的问题是,通过调用法师:: getModel(“目录/产品”),我认为目前的产品被覆盖。例如,当我点击“添加到购物车”按钮时,我的自定义特色upsell产品将被添加到购物车,而不是产品详细信息页面中的实际产品。

回答

2

原因是因为您重写了默认模板使用的$_product变量。使用你自己的变量名称,你会很好

$_myProduct = Mage::getModel('catalog/product')->load(array_rand($result, 1)); 
相关问题