2012-09-20 15 views
0

在Magento的店,我也希望能夠通過一些分類機制產品分類:分類和顯示選項 - 標記,分類等

(例如標籤,類別,相關產品或財產以後別的嗎?)

然後我可以建立一個能夠顯示所有分類標題的塊。用戶可以點擊並獲取該分類中所有產品的頁面。

例子:

Honda 
Toyota 
Chevrolet 
Hyundai 
Chrysler 

我們已經使用了分類,因此採用這種分類機制將產生許多不必要的項目列表。我在考慮使用 標籤系統,但是我還沒有在網上找到任何關於如何以這種方式使用標籤的討論。也許performnace不好?

這是第一次嘗試

// Here is a first attempt - I get all products with Category=4 
// which is a "taggable" category. Then I list all related tags 
require_once('app/Mage.php'); //Path to Magento 
umask(0); 
Mage::app(); 

// Category 4 is called "Category with tags" 
$_categoryId = "4"; 

$_productCollection = Mage::getModel('catalog/category')->load($_categoryId) 
    ->getProductCollection() 
    ->addAttributeToSelect('*') 
    ->addAttributeToFilter('status', 1) 
    ->addAttributeToFilter('visibility', 4) 
    ->setOrder('price', 'ASC');  


    foreach ($_productCollection as $_product): 
     $model=Mage::getModel('tag/tag'); 
     $tags= $model->getResourceCollection() 
      ->addPopularity() 
      ->addStatusFilter($model->getApprovedStatus()) 
      ->addProductFilter($_product->getId()) 
      ->setFlag('relation', true) 
      ->addStoreFilter(Mage::app()->getStore()->getId()) 
      ->setActiveFilter() 
      ->load(); 

     if(isset($tags) && !empty($tags)): 
      foreach($tags as $tag):    
       echo $tag->getName(). '<br/>'; 
      endforeach; 
     endif; 
    endforeach; 

任何人有任何代碼樣本上市標記,或者是更好的方式來做到這一點?

回答

0

就讓我們來看看在數據庫中說服了我,也許繞過Magento的精彩prodcutivity功能可能是爲了在這裏...

$sql = "SELECT * FROM tag WHERE status = '1'"; 
$connection = Mage::getSingleton('core/resource')->getConnection('core_read'); 
foreach ($connection->fetchAll($sql) as $arr_row) { 
    print $arr_row['name']; 
} 
0

你試過分層導航?它根據產品屬性創建分類機制。當輸入啓用分層導航的類別時,會顯示一個設置爲在其中顯示的產品屬性列表及其可能的值。

要啓用分層導航,請轉到目錄 - >分類 - >管理類別。在那裏,選擇一個類別,進入顯示設置選項卡,並設置是否定位到是。

要允許或防止在分層導航列表中顯示產品屬性,請轉至目錄 - >屬性 - >管理屬性。在那裏,選擇您想要的屬性並將Use In Layered Navigation選項設置爲所需的值。

它可能不是你想要的,但值得一試。