Не ищет слова из 3 букв и менее

  • 12 Ответов
  • 3216 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

x_files_1

  • Осваиваюсь на форуме
  • ***
  • 31
  • 0
Заголовоки материалов имеют длину 3 символа. Поиск через k2 tools отказывается находить такие материалы (слова длиной в 3 символа). Как исправить данный баг?

*

SDKiller

  • Moderator
  • *****
  • 2734
  • 320
  • ...ergo sum
Re: Не ищет слова из 3 букв и менее
« Ответ #1 : 07.12.2011, 23:37:55 »
Кто сказал что это баг?
Если у вас есть доступ к настройкам mysql - можете "исправить" ft_min_word_len

*

x_files_1

  • Осваиваюсь на форуме
  • ***
  • 31
  • 0
Re: Не ищет слова из 3 букв и менее
« Ответ #2 : 07.12.2011, 23:53:46 »
Цитировать
Если у вас есть доступ к настройкам mysql - можете "исправить" ft_min_word_len

Скорее всего это не то...
Просто стандартный поиск то находит и по двум буквам. Тут какаято причина именно в K2.
« Последнее редактирование: 07.12.2011, 23:59:34 от x_files_1 »

*

yrygvay

  • Живу я здесь
  • ******
  • 1281
  • 32
Re: Не ищет слова из 3 букв и менее
« Ответ #3 : 07.12.2011, 23:59:16 »
попробуйте на этом форуме поискать фразу менее 3х букв))) Думаете тоже баг?!

забыл что менее 2х
« Последнее редактирование: 08.12.2011, 01:09:07 от yrygvay »
Смотрю....

*

x_files_1

  • Осваиваюсь на форуме
  • ***
  • 31
  • 0
Re: Не ищет слова из 3 букв и менее
« Ответ #4 : 08.12.2011, 00:06:55 »
Цитировать
попробуйте на этом форуме поискать фразу менее 3х букв))) Думаете тоже баг?!
Попробовал и все прекрасно нашлось)

А у меня именно через K2 не хочет искать... Странно...

*

yrygvay

  • Живу я здесь
  • ******
  • 1281
  • 32
Re: Не ищет слова из 3 букв и менее
« Ответ #5 : 08.12.2011, 01:10:59 »
Вообще не знаю как вам мой совет, но я решил проблему с поиском у себя через поиск Яндекса для сайта.

Моё личное мнение, что это во первых влияет положительно на ваш сайт.
ДА и поиск очень хорошо работает через Яндекс.

Единственный минус (хотя не проверял) найдёт ли такой поиск только-что размещённый материал!
Смотрю....

*

SDKiller

  • Moderator
  • *****
  • 2734
  • 320
  • ...ergo sum
Re: Не ищет слова из 3 букв и менее
« Ответ #6 : 08.12.2011, 07:58:50 »
Просто стандартный поиск то находит и по двум буквам. Тут какаято причина именно в K2.

Стандартный поиск может у вас искать по двум буквам только если вы хакнули этот стандартный поиск, поскольку в com_search хардкодом забит лимит в 3.

В К2 причина действительно есть - там поиск в отличие от стандартного производится IN BOOLEAN MODE, соответственно завязан на индексацию в mysql. А тут уже как раз вступает в действие ft_min_word_len

*

Denixis

  • Новичок
  • *
  • 6
  • 0
Re: Не ищет слова из 3 букв и менее
« Ответ #7 : 06.04.2012, 22:36:25 »
у меня тоже проблемы с поиском. Но не в буквах, а в символах. У меня простенький каталог продуктов, в заголовках присутствует знак тире
как например MMK-02М
пробую искать, не находит. Не знаю как победить

*

Denixis

  • Новичок
  • *
  • 6
  • 0
Re: Не ищет слова из 3 букв и менее
« Ответ #8 : 06.04.2012, 22:55:30 »
Кто сказал что это баг?
Если у вас есть доступ к настройкам mysql - можете "исправить" ft_min_word_len
как это исправить?

*

Vasiok

  • Осваиваюсь на форуме
  • ***
  • 28
  • 0
Re: Не ищет слова из 3 букв и менее
« Ответ #9 : 03.05.2012, 04:20:40 »
Кто сказал что это баг?
Если у вас есть доступ к настройкам mysql - можете "исправить" ft_min_word_len

Делал, не работает(((

*

sharnin

  • Новичок
  • *
  • 8
  • 1
Re: Не ищет слова из 3 букв и менее
« Ответ #10 : 22.06.2012, 15:56:44 »
Проблема в плагине поиска K2 (plugins/search/k2.php)
Точнее в строке
         //$query .= "MATCH(i.title, i.introtext, i.`fulltext`,i.extra_fields_search,i.image_caption,i.image_credits,i.video_caption,i.video_credits,i.metadesc,i.metakey) AGAINST ({$text} IN BOOLEAN MODE)

Попробуй заменить код плагина на такой (k2 2.5.7) - у меня стал искать и из 3 символов, и с тире:

Спойлер
[свернуть]

*

kisBoss

  • Завсегдатай
  • *****
  • 438
  • 36
  • ник Tobol
Re: Не ищет слова из 3 букв и менее
« Ответ #11 : 29.01.2013, 12:26:29 »
Обнаружил у себя похожую проблему. На сайте есть материал с названием "S.T.A.L.K.E.R.", но через поиск его не находит.
Понятно, что проблема именно в K2. Виною всему точки. Поиск по k2 не учитывает символы. Если называю материал "STAL.K.E.R." (именно первые 4 буквы), то все нормально. Подскажите как победить.
Та же проблема в дополнительном поле с функцией "поисковая метка". Думаю проблема решается  в одном месте, скорее всего в ...\plugins\search\k2\k2.php.
Может кто-нибудь загрузит модифицированный файл плагина.
Последний ответ не помогает.
Joomla 2.5.8
k2 2.6.1
« Последнее редактирование: 29.01.2013, 12:56:13 от kisBoss »
Если помог - поставте "плюс". Вам ничего не стоит, а мне приятно.

*

ChaosHead

  • Профи
  • ********
  • 4667
  • 396
Re: Не ищет слова из 3 букв и менее
« Ответ #12 : 22.01.2016, 13:23:00 »
У меня тоже MATCH AGAINST не ищет, но от двух символов и менее, а не трёх. ft_min_word_len=1 не помогает, хотя полнотекстовый индекс пересоздавал :(
Пишу суперусловие, что если слово два символа или менее, то искать его через LIKE, а если нет, то через MATCH AGAINST ('.$word.' IN BOOLEAN MODE)
Потому как MATCH AGAINST ищет быстрее раз в десять. Правда это не для K2.
« Последнее редактирование: 22.01.2016, 13:30:49 от ChaosHead »