PDA

Просмотр полной версии : странное поведение модуля поиска indexed_search


Anlov
29.08.2011, 20:21
Привет!
При поиске на сайте выдает большее количество страниц с результатом, чем есть на самом деле, а потом, по мере последовательного открытия этих страниц, последовательно же уменьшает это количество. То есть, пример:
при поиске слова "Манго" выдает, что найдено 56 совпадений с таким словом или частью слова. И внизу сразу же выводит первую страницу с результатами от 1 до 10 из 56. Число страниц со ссылками - 6. Кликаем на вторую страницу. теперь пишет, что показаны результаты с 11 по 20 из всего 48 и количество страниц уже, соответственно, 5... И так далее, пока на каком-то числе не остановится.
Кто-нибудь может мне сказать, почему так происходит и как это исправить?

Anlov
06.09.2011, 12:53
что, никто не сталкивался?

Anlov
15.09.2011, 18:23
решение у немцев нашел:

в файле: indexed_search/pi/class.tx_indexedsearch.php
примерно с 592-ой строки надо сделать так:

// All rows for display is put into resultRows[]
if ($c > $pointer * $this->piVars['results'] && !($c > ($pointer+1)*$this->piVars['results'])) {
$row['result_number'] = $c;
$resultRows[] = $row;


и далее есть такая строка (примерно на строке 597)

// This may lead to a problem: If the result check is not stopped here, the search will take longer. However the result counter will not filter out grouped cHashes/pHashes that were not processed yet.
// if (($c+1) > ($pointer+1)*$this->piVars['results']) break;

которую надо закоментировать, если она не закоментированна

после этих изменений у меня стало выводить всегда правильное число совпадений со строкой поиска