gpt4 book ai didi

php - Magento:根据商店进行程序化搜索

转载 作者:搜寻专家 更新时间:2023-10-31 21:45:49 25 4
gpt4 key购买 nike

我正在使用 Magento 的目录搜索模块。我有2家商店。在第一个搜索“测试”时,我得到 5 个结果。在第二个搜索“测试”时,我得到 3 个结果。

我想在搜索第一个商店时添加第二个商店的结果(只是结果数)。

我添加了一个 block 和一个模板,我所需要的只是检索第二个商店中结果数量的代码,这就是我遇到的问题。

我试图获取 Controller 代码,但它总是返回第一个商店中的结果数:

private function _getStoreQuery($storeId) {

          $query = Mage::helper('catalogSearch')->getQuery();
$query->setStoreId(7);



if ($query->getQueryText()) {
if (Mage::helper('catalogSearch')->isMinQueryLength())

{ $query->setId(0) ->setIsActive(1) ->setIsProcessed(1); } else { if ($query->getId()) { $query->setPopularity($query->getPopularity()+1); } else { $query->setPopularity(1); }

            $query->prepare();
}

Mage::helper('catalogSearch')->checkNotes();

if (!Mage::helper('catalogSearch')->isMinQueryLength())

{ $query->save(); } }

    var_dump($query);
return $query;

}

我之前也尝试过更改商店上下文,但没有成功:Mage::app()->setCurrentStore($secondStoreId);

你有什么想法吗?谢谢

最佳答案

第二次尝试返回第一组结果的原因可能是因为您正在重用 Mage_Catalogsearch_Model_Query 对象。您需要创建一组新的结果。此处集合将创建这些,您只需遍历 $collection 即可获取它们。

$queryText = Mage::helper('catalogSearch')->getQueryText();
$collection = Mage::getResourceModel('catalogsearch/query_collection')
->setStoreId($storeId)
->setQueryFilter($queryText);

关于php - Magento:根据商店进行程序化搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3880473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com