1
我目前正在尝试为Magento类别页面制作特殊的排序功能。Magento类别按属性排序
我有几个属性,我需要使用排序:
的第一个属性被命名为设计师。该属性在可配置产品上设置。
下一个属性被命名为颜色和大小。这些不是在可配置产品本身上设置的,而是在“简单产品”上设置的,我将它们组合在一起来制作可配置产品。
$attributes_designers = $this->getRequest()->getParam('designers');
$attributes_colors = $this->getRequest()->getParam('color');
$attributes_sizes = $this->getRequest()->getParam('size');
$currentCategory = Mage::getModel('catalog/layer')->getCurrentCategory();
$_productCollection = $currentCategory->getProductCollection();
if(count($attributes_designers)>0 and !in_array("ALL",$attributes_designers)) {
$_productCollection->addAttributeToFilter('designer',$attributes_designers);
}
if(count($attributes_colors)>0 and !in_array("ALL",$attributes_colors)) {
$_productCollection->addAttributeToFilter('color',$attributes_colors);
}
if(count($attributes_sizes)>0 and !in_array("ALL",$attributes_sizes)) {
$_productCollection->addAttributeToFilter('size',$attributes_sizes);
}
if(isset($_GET['order'])) $_productCollection->setOrder($this->getRequest()->getParam('order'), $this->getRequest()->getParam('dir'));
$_productCollection->load();
不幸的是我无法获得属性颜色和尺寸的工作,因为它们没有在可配置产品上设置,但它是儿童。
有没有人有一个想法如何得到这个工作?
在此先感谢
Prattski - 我目前正在列出属性颜色,然后我想要显示颜色为“Brown”的所有项目。问题在于,这种颜色是在可配置产品的孩子身上定义的。你有什么想法如何解决这个问题?谢谢 – Kristian 2010-09-24 16:14:20
如果将颜色设置为可筛选属性(可筛选结果),则可以这样做。 Magento将查看与您的可配置产品相关的简单产品的所有颜色。如果设置正确,您会在类别视图的左侧看到彩色滤镜。 – Prattski 2010-09-27 20:28:00