Magento:如何从具有x属性的类别中收集所有产品
我需要从头开始创建自己的list.phtml,并且需要显示某个类别中具有“x”属性的产品。 我在list.phtml中读了很多书并使用了当前的getLoadedProductCollection()?>,但我无法让它工作 有什么建议吗 编辑: 好的,我可以使用以下代码显示一个类别中的所有产品: 现在我将如何在$collection中过滤颜色 Edit2:通过使用此代码->addAttributeToFilter('sku',array('like'=>'UX%')),我成功地仅显示包含此sku的产品 但当我尝试使用颜色时,它不会显示任何产品。 “我的颜色”属性是“多重选择”。我将代码设置为('color',array('like'=>'black')) 分层导航也不起作用? 工具栏不正确,它总是显示所有产品,并显示“1个产品”Magento:如何从具有x属性的类别中收集所有产品,magento,Magento,我需要从头开始创建自己的list.phtml,并且需要显示某个类别中具有“x”属性的产品。 我在list.phtml中读了很多书并使用了当前的getLoadedProductCollection()?>,但我无法让它工作 有什么建议吗 编辑: 好的,我可以使用以下代码显示一个类别中的所有产品: 现在我将如何在$collection中过滤颜色 Edit2:通过使用此代码->addAttributeToFilter('sku',array('like'=>'UX%')),我成功地仅显示包含此sku的
提前感谢有两种方法可以调试此功能。首先是查看集合用于查询数据库的SQL,包括:
echo $collection->getSelect()->assemble();
第二种方法是从产品的数据数组中查找color
属性的值,如:
var_dump($collection->getFirst()->getData('colour'));
在这两种情况下,您都会发现属性以整数形式存储在数据库中。要在集合中查询存储在select、multi-select或类似格式中的属性,您始终需要向我们提供表示选项的整数,而不是属性标签。请查看我的最新答案,谢谢您的回复,经过长时间的研究,我开始了解集合是如何工作的
但是现在我遇到了另一个问题,排序。
我使用修改后的list.phtml版本来显示具有某些属性的产品,但我需要所有方法将其排序为新的。
如果您从普通的list.phtml目录更改排序,排序也会影响我修改的home_list.phtml。我如何才能强制它对所有新的内容进行排序?我找到了这个用于清除集合的剪贴画:$\u productCollection->clear()->setPageSize(6),效果非常好。如何强制清除的集合按最新排序?此->addAttributeToSort('new_from_date','desc')不起作用:(