Перейти к содержанию

edmsl

Актив
  • Постов

    498
  • Зарегистрирован

  • Посещение

  • Победитель дней

    8

Весь контент edmsl

  1. edmsl

    Smart Search

    Вообще, если у кого-то есть предложения, как еще можно улучшить плагин, пишите.
  2. edmsl

    Smart Search

    Просмотр файла Smart Search Данный плагин это адаптация плагина (BIM) Quick Search (автор onlyME) версии 4.5.0 под версию IPS 4.7. Помимо адаптации были добавлены некоторый исправления и доработки. Флуд-контроль Поиск по конкретной фразе с помощью обрамления кавычками Настраиваемое время ожидания ввода запроса в поле поиска Поиск по вложенным категориям форума Расширение доступных опций для виджета Отображение превью записей из приложения Videos Добавление записей в журнал поиска Оригинальный файл и обсуждение процесса доработки здесь: Добавил edmsl Добавлено 08/12/23 Категория Интерфейс Язык RUS, ENG  
  3. Zero108 Если нажать на тег, то да, находит все по тегу, но если просто вбить в поиск текст тега - ничего.
  4. Zero108 Там он просто ищет как обычный поиск, если включен. Обычный поиск, оказывается не умеет искать по тегам...
  5. Zero108 В общем, установил. Флуд контроля и записей в лог нет. Поиск с кавычками зависает. В общем, из моих доработок ничего не появилось. Но там добавился поиск по тегам. Можно его внедрить попробовать.
  6. Zero108 Ты проверял 4.5.9? Я не ставил себе. может, там это уже тоже есть.
  7. Эх, раньше бы на недельку, глядишь, может и возиться с переделкой не пришлось.
  8. Плагин с помощью JS встраивается в шаблон поиска, тот, что ниже скинули. Если нужно ещё один поиск на странице, то используй виджет.
  9. Zero108 Точный поиск с кавычками, пара новых опций поиска для виджета. Новое название, следовательно изменены все классы CSS и id.
  10. Выложил новую версию под новым именем. Ждет одобрения.
  11. edmsl

    Smart Search

    Версия 1.1.0

    61 раз скачали

    Данный плагин это адаптация плагина (BIM) Quick Search (автор onlyME) версии 4.5.0 под версию IPS 4.7. Помимо адаптации были добавлены некоторый исправления и доработки. Флуд-контроль Поиск по конкретной фразе с помощью обрамления кавычками Настраиваемое время ожидания ввода запроса в поле поиска Поиск по вложенным категориям форума Расширение доступных опций для виджета Отображение превью записей из приложения Videos Добавление записей в журнал поиска Оригинальный файл и обсуждение процесса доработки здесь:
    Бесплатный
  12. Zero108 Поиск Эластик? Как-то странно он себя ведет все же. Но даже так разница очевидна. В последнем варианте, с двойными кавычками, по идее, должен найти только те строки, где слова строго в указанном порядке. Но 3-я выдача не соответствует ему. Внутри в статье тоже нет такой фразы.
  13. Zero108 Одинарные не работают на движке. Попробуй в стандартном поиске с одинарными и с двойными обернуть по очереди.
  14. Ответа я так и не нашел, поэтому решил делать, полагаясь на логику. В итоге написал так: // Удалил эту строку отсюда и сделал удаление кавычек только для $temp для проверки в цикле (1). //$term = preg_replace('/^(\'(.*)\'|"(.*)")$/', '$2$3', $term); // Здесь проверка, что кавычки есть. Нужно для того, чтобы не не добавлялась * для поиска по неполному слову. $isStrictSearch = preg_match('/^(\'(.*)\'|"(.*)")$/', $term); $temp = preg_split( '//u', // Перенес сюда (1) preg_replace('/^(\'(.*)\'|"(.*)")$/', '$2$3', $term), 0, PREG_SPLIT_NO_EMPTY ); foreach ($temp as $a) { $cnt = 0; if (preg_match('/[^\w\s]+/u', $a)) { $cnt++; if ($cnt >= 2) { \IPS\Output::i()->json(array('type' => 'OK', 'html' => "", 'term' => $term)); } } else { $cnt = 0; } } Так как я не знаю, для чего нужна проверка циклом, а выполнялась она в оригинале со строкой без кавычек, то и сейчас она так же выполняется, но оригинальный запрос не меняется.
  15. @Exception Нужна твоя консультация. Проблема с поиском по конкретной фразе. Можно обернуть текст в двойные кавычки, и тогда поиск будет искать только те строки, где слова идут в указанном порядке. Но в плагине это не работает. В коде плагина есть такие строки: $term = preg_replace('/^(\'(.*)\'|"(.*)")$/', '$2$3', $term); $temp = preg_split('//u', $term, 0, PREG_SPLIT_NO_EMPTY); foreach ($temp as $a) { $cnt = 0; if (preg_match('/[^\w\s]+/u', $a)) { $cnt++; if ($cnt >= 2) { \IPS\Output::i()->json(array('type' => 'OK', 'html' => "", 'term' => $term)); } } else { $cnt = 0; } } где $term = preg_replace('/^(\'(.*)\'|"(.*)")$/', '$2$3', $term); убирает кавычки в начале и конце строки. Из-за этого точный поиск не срабатывает. Собственно, мне не понятно, для чего это делается. Какая-то защита? Вроде из инпута в любом случае передается строка. И проверка в цикле мне тоже не понятна. Разбивается вся строка на символы, а потом проверка на длину символа, где считаются все НЕ буквы и НЕ пробелы. Видимо, это какие-то специфические проверки безопасности, о которых я не знаю, но хотелось бы понять это все.
  16. Zero108 Взглянуть-то можно, а там видно будет, сгодится он или нет.
  17. Да, добавлю. В общем, есть куда развивать плагин если что.
  18. Нет, как раз-таки нового кода там процентов 10. Но то, что его лучше бы сделать отдельным файлом, я согласен. Все же плагин и сейчас развивается автором, и наличие моей ответвленной версии может сбить с толку. Буду выпускать его под именем Smart Search, название мне нравится, хотя и не совсем подходит. И да, проблему со скриншотом выше решил. Вечером скину новый файл сразу с исправлением.
  19. Обнаружил еще одну проблему. Если, допустим, у файла указан скриншот по url, то в поиске он те отображается. Буду разбираться.
  20. Сам спросил - сам отвечу. Для Pages фильтры ставятся как отдельный блок, Pages -> Database Filters.
  21. Для некоторых полей в БД можно включить опцию Allow filtering, что предполагает возможность фильтрации записей по этому полю. Но фильтры эти не отображаются на странице. Что-то где-то еще нужно включить?
  22. Zero108 В пользу этой теории говорит еще то, что текст запроса - это текст из плейсхолдера (заглушки) поля поиска.
  23. Zero108 Может боты балуются? У меня гости исключены из логирования.
  24. Я не могу получить такую запись. Пустой запрос быстрым поиском не отправляется, а если нажимать кнопку с пустым запросом или жать Enter, то запись у меня не добавляется.
×
×
  • Создать...