我正在使用产品收集资源模型加载所有产品。

$_categoryId = $this->getCategoryId();

$_productCollection = Mage::getResourceModel('catalog/product_collection')
        ->addMinimalPrice()
        ->addFinalPrice()
        ->addTaxPercents()
        ->addCategoryFilter(Mage::getModel('catalog/category')->load($_categoryId))
        ->addAttributeToSelect('*')
        ->addAttributeToFilter('status', 1)
        ->addAttributeToFilter('visibility', 4);

但是,我无法使用例如使用分组产品的最低价格。

echo $_productCollection->getFirstItem()->getMinimalPrice();

这确实适用于简单产品。这似乎与以下事实有关:这是核心/模板块类型,而不是目录/product_list块。但是,由于其他原因,使用目录/product_list不是一个选择。

有帮助吗?

解决方案

如果您更新代码,那么它不只是选择 *,而是使用目录配置属性,那么您的代码适用于所有产品类型。

Mage::getSingleton('catalog/config')->getProductAttributes()

您的代码应该看起来像。

$_categoryId = $this->getCategoryId();

$_productCollection = Mage::getResourceModel('catalog/product_collection')
    ->addMinimalPrice()
    ->addFinalPrice()
    ->addTaxPercents()
    ->addCategoryFilter(Mage::getModel('catalog/category')->load($_categoryId))
    ->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())
    ->addAttributeToFilter('status', 1)
    ->addAttributeToFilter('visibility', 4);

在这种情况下,将为每种类型的产品加载正确的最低价格。

许可以下: CC-BY-SA归因
scroll top