2012-10-11 128 views
1

目錄/所屬類別類型塊我使用了一個簡單的自定義模塊列出的產品從側欄特定類別。當被稱爲Magento的呼叫從產品頁面

<block type="catalog/product_list" before="-" name="product.leftnav" as="product.leftnav" template="catalog/product/training_leftlist.phtml" /> 

除了產品頁面,它會導致錯誤(我得到的404頁面下方的商品頁面)的所有頁面,它工作正常。

是否有更好的塊type我應該使用或調用它的產品頁面上以不同的方式?

模板文件:

<?php 
$products = Mage::getModel('catalog/product') 
->getCollection() 
->addAttributeToSelect('*') 
->addAttributeToFilter('status',1) 
->addStoreFilter() 
->addCategoryFilter(Mage::getModel('catalog/category')->load(12)); 

$products->setPageSize(4)->setCurPage(1); 

$_helper = $this->helper('catalog/output'); 

然後以某種打印的項目,如

if(count($products>0)) echo "<ul>"; 
foreach($products as $_product):?> 
    <li> 
    <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></a></h2> 
    </li> 
<?php endforeach;?> 
<?php if(count($products>0)) echo "</ul>";?> 

回答

0

的答案竟然使用不同block type每個地方。

對於非產品頁面

<block type="catalog/product_list" before="-" name="product.leftnav" as="product.leftnav" template="catalog/product/training_leftlist.phtml" /> 

然後在產品頁面中使用type="catalog/product_list_related"。還記得刪除以上內容,例如

<catalog_product_view> 

    <remove name="product.leftnav" /> 

    <!-- Left bar product list--> 
    <reference name="left"> 
    <block type="catalog/product_list_related" before="-" name="product.leftnav.view" as="product.leftnav.view" template="catalog/product/training_leftlist.phtml" /> 
    </reference> 

</catalog_product_view>