Я использую модуль catalogsearch Magento. У меня 2 магазина. При поиске «теста» на первом я получаю 5 результатов. При поиске «теста» на втором я получаю 3 результата.Magento: программный поиск в зависимости от магазина
Я хочу добавить результаты второго магазина (только количество результатов), когда я ищу в первом.
Я добавил блок и шаблон, все, что мне нужно, это код для получения числа результатов во втором магазине, и именно там я застрял.
Я пытался получить код контроллера, но он всегда возвращает мне число результатов в первом магазине:
частная функция _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 :: приложение() -> setCurrentStore ($ secondStoreId);
У вас есть идея? Спасибо
Я думаю, что это действительно проблема, но ваш совет не разрешает это. – frinux
Вот содержание коллекции: http://pastebin.com/BwiFEQbi И когда я пытаюсь выполнить итерацию по ней, это приводит к сбою Magento (загрузка стоп-листов): foreach ($ collection as $ col) {var_dump ($ Col); } База данных содержит также только один запрос (тот, который находится в магазине 1) – frinux
Когда я пытаюсь сделать то же самое, я получаю этот http://pastebin.com/nVKQPSky. Если я ищу что-то, чего не существует, коллекция пуста и ничего не сработает. Короче говоря, я не могу воссоздать то, что вы видите. – clockworkgeek