Magento搜索结果不包括儿童产品

时间:2013-11-11 13:33:02

标签: php magento

我正在尝试修改Magento目录搜索结果,但还没有运气。我在商店里都有简单和分组/可配置的产品。

如果有人搜索“searchTerm 1”,我只希望显示与搜索字词匹配的父产品,而不是那些与其子产品匹配的产品。我不能将这些儿童产品设置为“不要单独展示”,因为我希望它们也能单独出现(如果是分组产品)

E.g。

  1. 这是水果产品名称。 (分组产品) 孩子是: a。)这是芒果水果产品的标题 b。)这是香蕉水果产品标题

  2. 这是芒果汁产品名称(分组产品) 孩子是: a。)这是芒果汁四包产品名称 b。)这是芒果汁的另一个儿童产品标题

  3. 现在,如果我搜索芒果,我应该只获得产品#2,即这是芒果汁产品标题

2 个答案:

答案 0 :(得分:1)

您可以将“儿童”产品的产品可见性更改为“目录”。这样,您在浏览类别时仍然可以看到这些产品,但在搜索时会被忽略 [编辑]
您可能需要查看此方法:Mage_CatalogSearch_Model_Resource_Fulltext :: _ rebuildStoreIndex。儿童产品有一些东西。试着看看你是否可以忽略它们

答案 1 :(得分:1)

谢谢@Marius,它就像一个魅力。我不得不评论以下内容:

 /* Commented by Tanay to remove child product from search result
if ($productChilds = $productRelations[$productData['entity_id']]) {
    foreach ($productChilds as $productChildId) {
        if (isset($productAttributes[$productChildId])) {
            $productIndex[$productChildId] = $productAttributes[$productChildId];
        }
    }
}
*/