根据目录价格规则获取产品清单

时间:2011-05-17 13:30:52

标签: magento

假设我创建了一个价格规则,所有价格超过1000卢比的产品都可以获得30%的折扣。现在我应该做些什么来列出那个目录价格规则下的产品

2 个答案:

答案 0 :(得分:1)

我一直在寻找相同的东西,找到了你可以粘贴在list.phtml中的以下代码,它会显示特定目录价格规则下的产品:

$rule = Mage::getModel('catalogrule/rule')->load(12);  /* catalog price rule id */
$rule->setWebsiteIds("1"); 
$productIdsArray = $rule->getMatchingProductIds(); 
$productsCollection = Mage::getModel('catalog/product')
                ->getCollection() 
                ->addAttributeToSelect("*") 
                ->addAttributeToFilter('visibility', 4)
                ->addAttributeToFilter("entity_id", array("in", $productIdsArray));

请务必在list.phtml的其余代码中更改price规则ID和$ productsCollection

如果你能够完全遵守所有规则,请告诉我,现在一直在寻找解决方案。

答案 1 :(得分:0)

很奇怪,确实没有简单的功能。我能想到的是以下内容,以获取所选产品的所有ID列表:

仅在已经应用规则时才有效。

  • 找出规则的ID。当您进入规则编辑屏幕时,可以从网址栏中阅读此内容。
  • 针对数据库运行以下查询:SELECT DISTINCT product_id FROM catalogrule_product WHERE rule_id=<id>;,您将替换&lt; id&gt;通过步骤1中找到的ID。

虽然可能会有更简单的事情......