Forums / National / Russian / Модули и плагины / Новый плагин поиска

12>>>

Boss
#1 2009-07-05 14:28
Есть предложение заменить стандартный поиск в Cotonti на поиск с расширенными функциями, который в свое время был сделан для Seditio - http://www.hardweb.ru/page-id-2.html

К настоящему времени первая модификация поиска для Cotonti готова. Качать здесь. В работе плагин можно посмотреть на сайте PcTuner.Ru.

Особенности данной модификации плагина поиска:
  • Полная адаптация под особенности движка Cotonti.
  • Раздельный код и шаблон, что позволяет с легкостью менять оформление.
  • Все надписи выведены в языковой файл, что позволяет делать другие локализации.
  • Дополнительный расширенный поиск по страницам и форуму.
  • Сохранение всех параметров при запросах в поисковой форме.
  • Простая форма ввода диапазона дат с использованием JavaScript.
  • Корректный учет дат в зависимости от выбранных параметров поиска. Например, при поиске в заголовках тем форума учитывается дата создания и последнего изменения топика. Если поиск осуществляется только в теле сообщений, то учитывается дата создания и изменения поста.
  • Возможность вывода отрывков текста в результатах поиска.
  • Плагин имеет настройки с наиболее важными параметрами.

Языковой файл в настоящее время только русский. Если кто владеет нормально английским языком, то сделайте пожалуйста англоязычный вариант. См могу сделать, то пожалуй получится не сильно корректный перевод. :-)

По части вывода отрывков текста в результатах поиска... Это новая функция. Сам по себе поиск достаточно требователен к ресурсам. Так было всегда. И проявляется это особенно на сайтах с большой базой. Ведь перебор при поиске идет полностью по соответствующим таблицам. Именно поэтому, кому не надо, вывод текста в результатах отключается в настройках плагина. Это первое.

Втрое. В настоящее время выборка отрывков текста для результатов происходит не всегда адекватно. Хотя логика реализована нормальная. Вплоть до того, что по пробелам между слов вырезка идет. Однако видимо пока еще есть небольшие недоработки в логике. Позже, при наличии времени, попробую разобраться в чем дело. Пока предлагаю в таком виде как есть.
Dayver
#2 2009-07-05 15:38
Отличная работа.

Пока еще не изучал глубоко .... но сразу вопрос - а пагинации нема? и принимается ли поисковый запрос через GET (тобишь работает ли передача запроса через адрес)?
Pavlo Tkachenko aka Dayver
Boss
#3 2009-07-05 15:53
В расширенном поиске для форума и страниц по раздельности пагинацию реализовать не сложно. Хотел сделать, да уже и так вчера с плагином долго провозился. Может потом.

Насчет строкового запроса... Там в коде осталось считывание параметра:
$pre = sed_import('pre','G','TXT');
Это я так понимаю как раз для этого и делалось кем-то в свое время. Однако кроме этого там куча параметров по POST передается. С ними тоже надо что-то делать. Без них работать не будет. Пихать все в строку? Но тогда строка похлеще чем у яндекса получится.
Dayver
#4 2009-07-05 17:22
# Boss : В расширенном поиске для форума и страниц по раздельности пагинацию реализовать не сложно. Хотел сделать, да уже и так вчера с плагином долго провозился. Может потом.
Было бы здорово если бы все таки пагинация была в поиске ... в сам движок уже внедрена пагинация везде где она необходима ... потому и плагины, желательно, не должны иметь такого недостатка как отсутствие постраничной разбивки.


# Boss : Насчет строкового запроса... Там в коде осталось считывание параметра:
$pre = sed_import('pre','G','TXT');
Это я так понимаю как раз для этого и делалось кем-то в свое время. Однако кроме этого там куча параметров по POST передается. С ними тоже надо что-то делать. Без них работать не будет. Пихать все в строку? Но тогда строка похлеще чем у яндекса получится.
Да да точно ... поглядел на код ... считывание есть но из-за отсутствия других необходимых параметров поиск запущеный с набраного запроса в адресной строке не работает. Но это важная вича ... почему? да потому как без неё нельзя поделится результатами поиска с другими людми .... приходится давать ссылку и писать какое словосочетание вводить .... иначе же все упрощается до передачи ссылки (которая уже содержит словосочетание + необходимые параметры ... в перечень которых возможно должен входит номер просматриваемой страницы результатов поиска .... ну конечно же на случай если в самом плагине будет пагинация).

Думаю плагин который будет содержать эти доработки можно будет смело добавлять в бету которая вот-вот должна выйти (тогда вместе с тестированием пользователями движка протестиhet и плагин поиска).
Pavlo Tkachenko aka Dayver
Boss
#5 2009-07-05 17:50
Да это понятно. Но эти доработки требует времени. В будущем может быть они будут. А пока в движок надо включать текущую версию плагина. Кого ждать то? Или наслаждаться пока тем поиском, который сейчас в движке? Он всяко не лучше.
Dayver
#6 2009-07-05 21:54
так я в принцыпе и не против то .... просто высказался о том чего нехватает ;-)
Pavlo Tkachenko aka Dayver
SunChase
#7 2009-07-05 23:02
Да.Этот поиск получше будет чем стандартный

Вот только такой вопрос: Как сделать чтобы при выводе Страниц парсилось поле текста?
[url=http://ka13.orgfree.com]KA13[/url] - The essence of creativity
This post was edited by SunChase (2009-07-05 23:50, 15 years ago)
Boss
#8 2009-07-06 23:33
>Как сделать чтобы при выводе Страниц парсилось поле текста?
Это еще зачем? :-) Прикинем... Допустим 50 запросов базы для парсинга на каждую страницу. Вывод 100 страниц. Итого 5тыс запросов за раз. Не многовато ли? ;-)
SunChase
#9 2009-07-06 23:44
звучит конечно логично.Но зачем тогда было в оригинале в плагине делать запросы в ДБ на вывод текста(первый пост и т.д.) и вставлять это дело в результаты поиска.Непонимаю

Boss а можно к поиску добавить чтоб оно просматривало не только по названию,тексту и т.д. а ещё и по полю page_key ?
[url=http://ka13.orgfree.com]KA13[/url] - The essence of creativity
This post was edited by SunChase (2009-07-09 08:19, 15 years ago)
Boss
#10 2009-07-09 13:20
В принципе можно. Там по-другому будет. Может сегодня доделаю. В настройках можно будет перечислить любые поля. В частности это просили сделать для экстра-полей. Но кто мешает туда же вписать page_key.
SunChase
#11 2009-07-09 22:09
отлично.Жду с нетерпением
[url=http://ka13.orgfree.com]KA13[/url] - The essence of creativity
Dr2005alex
#12 2009-07-21 04:42
Пришла тут идейка! Как плагинописателя очень интерисует вопрос! Вот есть у нас общий поиск, но только для страниц и форумов! А вот для разных плагинов приходится писать отдельные модули по поиску! Ну вот к примеру для блогов или еще ченить!
Интерисует ваше мнение ребята: А что если нам покумекать над общим поиском с расширенными функциями! С возможностью подключаться другим плагинам!? Например как в тегах есть возможность (правда не полноценная,но есть)Как думаете?

К примеру сделать перхват по HOOK и дополнительную таблицу в базе с правилами! Ну к примеру перечень таблиц где искать и поля в котрых искать ну и соответственно урл для перехода!

Ваше мнение очень жду!

PS (Думаю этим заняться но не уверен в правильности этого подхода.)
WebKaa.ru - Cotonti Relax
Trustmaster
#13 2009-07-21 05:05
Кажется, на neocrome.ru обсуждалось это. Да, модульный поиск был бы весьма кстати. Но это по сути значит переписать его с нуля, поэтому до сих пор мы мучали старый 2.0/3.0.
May the Source be with you!
Boss
#14 2009-07-21 11:40
Конфигурация, дополнительная таблица в базе и т.д. Как-то не очень мне эта затея нравится. Плагин - есть плагин. Лучше его не привязывать сильно к системе. Ведь кто-то может себе позволить установить и более продвинутый релевантный поиск. Может и мы к нему когда-нибудь придем.
Dr2005alex
#15 2009-07-22 03:35
Boss - а почему нет?

Ну про таблицу это я к примеру! Можно например просто на файлах организовать!(не будем трогать базу!)
Допустим создадим общую папку(да хоть в самом плуге поиска) И туда файлы например txt где перечень правил,таблиц т.д.
ну к примеру:


page.txt
forums.txt
blogs.txt
doska.txt

А в плуге просто перед запросам к базе просканировать данные!
Это даст возможность безболезненно организовать поиск и по плагинам! Надо организовать поиск например в блогах со своей таблицей - кинул в папку данные базы - категории,урл и плуг выдаст все!
Можно добавить типа "релевантность" по корню слова.

Можно конечно и через hook подключать плагины и использовать функции поиска на стороне плагина который подключается!

Потому и поднял тему! Как будет лучше в плане нагрузки и вообще правильности.........
WebKaa.ru - Cotonti Relax

12>>>