lordmicro Posted January 6, 2014 Share Posted January 6, 2014 (edited) Здравствуйте. Обновился с версии 1.4.5.1 до последней 1.5.6.1 Перестал работать поиск и начал транслитироваться русский. При запросе "втулка" писалось что-то вроде: Ничего не найдено по Вашему запросу "vtulka". Проблему решил обновлением controllers/front/SearchController.php до последней версии из GitHub. Убрал лишь строчки $this->addColorsToProductList(...); Мой diff: [spam-filter] -88,16 [spam-filter],22 [spam-filter] $this->productSort(); $this->n = abs((int)(Tools::getValue('n', Configuration::get('PS_PRODUCTS_PER_PAGE')))); $this->p = abs((int)(Tools::getValue('p', 1))); + $original_query = Tools::safeOutput($query); $query = Tools::replaceAccentedChars(urldecode($query)); $search = Search::find($this->context->language->id, $query, $this->p, $this->n, $this->orderBy, $this->orderWay); + foreach ($search['result'] as &$product) + $product['link'] .= (strpos($product['link'], '?') === false ? '?' : '&').'search_query='.urlencode($query).'&results='.(int)$search['total']; Hook::exec('actionSearch', array('expr' => $query, 'total' => $search['total'])); $nbProducts = $search['total']; $this->pagination($nbProducts); $this->context->smarty->assign(array( 'products' => $search['result'], // DEPRECATED (since to 1.4), not use this: conflict with block_cart module 'search_products' => $search['result'], 'nbProducts' => $search['total'], - 'search_query' => $query, + 'search_query' => $original_query, 'homeSize' => Image::getSize(ImageType::getFormatedName('home')))); } else if (($tag = urldecode(Tools::getValue('tag'))) && !is_array($tag)) Проблема с выводом транслита решилась. Но поиск не заработал. Сделал переиндексацию базы поиска. Поиск кое-как заработал. У меня стоит порезанный локализатор. Я использую оттуда Lingua_Stem_Ru. До обновления работал отлично. После обновления часть товаров по проверочным запросам не находились. Список псевдонимов, который настраивается в админке, не отрабатывал. Начал копать. Докопался до коммита: [] BO : improved unicode characters replacement in URLs (Russian and Ukrainian characters added). Я откатил изменения этого коммита и пришло моё счастье. Поиск работает снова прекрасно. Может мне кто-нибудь объяснить смысл этого коммита? For English users topic here. Edited January 6, 2014 by lordmicro (see edit history) Link to comment Share on other sites More sharing options...
bagriydn Posted February 16, 2014 Share Posted February 16, 2014 (edited) Спасибо! Спас мои нервы! Работает на 1.5.6.2! Edited February 16, 2014 by bagriydn (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now