在Magento商店,我希望能够通过某种分类机制对产品进行分类(例如:标签,类别,相关产品或其他产品?)
然后我可以构建一个显示所有分类标题的块。然后,用户可以单击并获取此分类中所有产品的页面。
示例:
Honda
Toyota
Chevrolet
Hyundai
Chrysler
我们已经使用了类别,因此使用此分类机制会生成包含许多不需要的条目的列表。我正在考虑使用 标签系统,但我没有在网上找到任何以这种方式讨论使用标签的参考文献。也许表演不好?
这是第一次尝试
// 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 :(得分:0)
在数据库中快速浏览一下,说服我可能在这里顺便通过Magento的精彩生产功能......
$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'];
}
答案 1 :(得分:0)
您是否尝试过分层导航?它根据产品属性创建分类机制。输入启用了分层导航的类别时,会显示一个设置为显示在其中的产品属性列表及其可能的值。
要启用分层导航,请转到目录 - &gt;分类 - &gt;管理类别。在那里,选择一些类别,转到显示设置选项卡并将Is Anchor设置为是。
要允许或阻止产品属性显示在“分层导航”列表中,请转到“目录” - &gt;属性 - &gt;管理属性。在那里,选择所需的属性并将“在分层导航中使用”选项设置为所需的值。
这可能不是你想要的,但值得一试。