我遇到麻烦,让寻呼机按照我的要求在Magento工作。
问题是:
我正在收集一个产品系列,我只过滤了带图像的产品。
但是分页仍然显示未应用过滤的产品总数,我该如何解决?
实施例: 我有38个产品,其中只有23个有图像关联,如果我定义按页面显示9个产品它应该呈现1 | 2 | 3。但它仍然显示1 | 2 | 3 | 4 | 5。
提前致谢,以下是我用来过滤产品的代码。
$_productCollection = clone $this->getLoadedProductCollection()
->clear()
->addAttributeToFilter('small_image', array('neq' => 'no_selection'))
->load();
答案 0 :(得分:1)
也许您需要包含addAttributeToSelect:
$_productCollection = clone $this->getLoadedProductCollection()
->clear()
->addAttributeToSelect('*')
->addAttributeToFilter('image', array('neq' => 'no_selection'));
编辑1
好的,您需要进入文件app/code/core/Mage/Catalog/Model/Category.php
并尝试从以下位置编辑方法getProductCollection()
:
public function getProductCollection()
{
$collection = Mage::getResourceModel('catalog/product_collection')
->setStoreId($this->getStoreId())
->addCategoryFilter($this);
return $collection;
}
成:
public function getProductCollection()
{
$collection = Mage::getResourceModel('catalog/product_collection')
->setStoreId($this->getStoreId())
->addAttributeToFilter('small_image', array('neq' => 'no_selection'))
->addCategoryFilter($this);
return $collection;
}
当然,您不应该直接编辑它,然后在本地池中覆盖它。可以删除克隆代码。