Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento:如何从具有x属性的类别中收集所有产品_Magento - Fatal编程技术网

Magento:如何从具有x属性的类别中收集所有产品

Magento:如何从具有x属性的类别中收集所有产品,magento,Magento,我需要从头开始创建自己的list.phtml,并且需要显示某个类别中具有“x”属性的产品。 我在list.phtml中读了很多书并使用了当前的getLoadedProductCollection()?>,但我无法让它工作 有什么建议吗 编辑: 好的,我可以使用以下代码显示一个类别中的所有产品: 现在我将如何在$collection中过滤颜色 Edit2:通过使用此代码->addAttributeToFilter('sku',array('like'=>'UX%')),我成功地仅显示包含此sku的

我需要从头开始创建自己的list.phtml,并且需要显示某个类别中具有“x”属性的产品。 我在list.phtml中读了很多书并使用了当前的getLoadedProductCollection()?>,但我无法让它工作

有什么建议吗

编辑: 好的,我可以使用以下代码显示一个类别中的所有产品:

现在我将如何在$collection中过滤颜色

Edit2:通过使用此代码->addAttributeToFilter('sku',array('like'=>'UX%')),我成功地仅显示包含此sku的产品 但当我尝试使用颜色时,它不会显示任何产品。 “我的颜色”属性是“多重选择”。我将代码设置为('color',array('like'=>'black')) 分层导航也不起作用? 工具栏不正确,它总是显示所有产品,并显示“1个产品”


提前感谢

有两种方法可以调试此功能。首先是查看集合用于查询数据库的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')不起作用:(