Magento:从产品ID数组生成评论集合
我正在尝试构建一个产品评论集合,它将来自多个不同产品的评论组合在一起。我使用以下代码,但是集合只返回数组中列出的第一个产品ID的评论,而不是两个产品IDMagento:从产品ID数组生成评论集合,magento,magento-1.7,Magento,Magento 1.7,我正在尝试构建一个产品评论集合,它将来自多个不同产品的评论组合在一起。我使用以下代码,但是集合只返回数组中列出的第一个产品ID的评论,而不是两个产品ID $entity_ids = "153435, 153438"; $reviewcollection = Mage::getModel('review/review')->getCollection()->addEntityFilter('product', array('in' => $entity_ids)); $revi
$entity_ids = "153435, 153438";
$reviewcollection = Mage::getModel('review/review')->getCollection()->addEntityFilter('product', array('in' => $entity_ids));
$reviewcollection->addStoreFilter(Mage::app()->getStore()->getId())->addStatusFilter(Mage_Review_Model_Review::STATUS_APPROVED)->setDateOrder()->addRateVotes();
$_items = $reviewcollection->getItems();`
您知道如何让集合合并来自多个产品ID的评论吗?addEntityFilter()不接受数组。您可以尝试添加FieldToFilter($field,$condition)或重写集合并编写自己的方法。或者,您可以通过ID循环并合并结果。addEntityFilter()不接受数组。您可以尝试添加FieldToFilter($field,$condition)或重写集合并编写自己的方法。或者,您也可以通过ID循环并合并结果。谢谢!你的代码稍微修改了一下就成功了!谢谢你,德鲁!你的代码稍微修改了一下就成功了!
$entity_ids = array(153435, 153438);
$reviewcollection = Mage::getModel('review/review')->getCollection()
->addStoreFilter(Mage::app()->getStore()->getId())
->addStatusFilter(Mage_Review_Model_Review::STATUS_APPROVED)
->addFieldToFilter('entity_id', Mage_Review_Model_Review::ENTITY_PRODUCT)
->addFieldToFilter('entity_pk_value', array('in' => $entity_ids))
->setDateOrder()
->addRateVotes()
;
$_items = $reviewcollection->getItems();