Magento getCollection网站过滤器

时间:2011-08-02 09:53:11

标签: magento

我的Magento安装的价格范围设置为网站。因此,我可以为不同的网站设置不同的产品价格。

我正在尝试加载产品型号,但检索到的价格属性值是默认值,而不是网站特定值。

以下是我正在使用的代码。

             $oProduct = Mage::getModel("catalog/product")
                        ->getCollection()
                        ->addAttributeToSelect("*")
                        ->addWebsiteFilter($websiteId)
                        ->addFieldToFilter("entity_id", $ruleData["product_id"])                        
                        ->getFirstItem();

不确定我缺少的addWebsiteFilter方法似乎没有达到预期的效果。

由于

2 个答案:

答案 0 :(得分:5)

我想在前端应用网站过滤器,发现使用addWebsiteFilter()(无参数)来过滤当前网站的产品就完成了。 例如:

Mage::getModel('catalog/product')->getCollection()->addWebsiteFilter()

答案 1 :(得分:4)

我认为您需要为集合设置StoreId。所以:

$oProduct = Mage::getModel("catalog/product")
                ->getCollection()
                ->setStoreId($correct_store_id_for_website)
                ->addAttributeToSelect("*")
                ->addFieldToFilter("entity_id", $ruleData["product_id"])                        
                ->getFirstItem();