【发布时间】:2010-09-24 09:14:22
【问题描述】:
我目前正在尝试为 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();
不幸的是,我无法让属性颜色和大小起作用,因为它们没有在可配置产品上设置,而是子产品。
有人知道如何让它工作吗?
提前致谢
【问题讨论】: