mSearch2 ошибка - выдача всех ресурсов в autocomplete
Закончился срок поддержки всех купленных mSearch2, а вопрос решить не могу уже который день.
Проблемка такая, что если ввести некоторую билиберду в поле поиска, то автокомплит иногда просто вываливает все ресурсы, не обращая внимания на заданные чанки. Проблема в параметре mse2_index_min_words_length, если он равен 4 или больше, то всё ок. А вот если 3, то возникает эта проблема. Поставить 4 нет возможности, т.к. делаю крупный магазин и там много товаров, которые называются тремя буквами и это очень важно.
Всё, что смог сделать, это в файле assets/components/msearch2/action.php
заменить это:
Решал ли кто-нибудь такую проблему?
Проблемка такая, что если ввести некоторую билиберду в поле поиска, то автокомплит иногда просто вываливает все ресурсы, не обращая внимания на заданные чанки. Проблема в параметре mse2_index_min_words_length, если он равен 4 или больше, то всё ок. А вот если 3, то возникает эта проблема. Поставить 4 нет возможности, т.к. делаю крупный магазин и там много товаров, которые называются тремя буквами и это очень важно.
Всё, что смог сделать, это в файле assets/components/msearch2/action.php
заменить это:
foreach ($rows as $k => $row) {
$results[] = array(
'id' => $row['id'],
'url' => $modx->makeUrl($row['id'], '', '', 'full'),
'value' => html_entity_decode($row['pagetitle'], ENT_QUOTES, 'UTF-8'),
'label' => isset($processed[$k])
? $processed[$k]
: $pdoFetch->getChunk($scriptProperties['tpl'], $row),
);
}
на это:if (count($rows) <= $scriptProperties['limit']){
foreach ($rows as $k => $row) {
$results[] = array(
'id' => $row['id'],
'url' => $modx->makeUrl($row['id'], '', '', 'full'),
'value' => html_entity_decode($row['pagetitle'], ENT_QUOTES, 'UTF-8'),
'label' => isset($processed[$k])
? $processed[$k]
: $pdoFetch->getChunk($scriptProperties['tpl'], $row),
);
}
}
но само собой, это не выход, ибо обновления и вообще костыль.Решал ли кто-нибудь такую проблему?
Поблагодарить автора
Отправить деньги