Jump to content

Featured Replies

comment_195433
9 часов назад, Zero108 сказал:

Кстати, можно было бы исключить из логов вот такие запросы

Я не могу получить такую запись. Пустой запрос быстрым поиском не отправляется, а если нажимать кнопку с пустым запросом или жать Enter, то запись у меня не добавляется.

  • Replies 140
  • Просмотров 8,4k
  • Created
  • Последний ответ

Лучшие авторы в теме

Most Popular Posts

  • Хороший плагин, но на 4.7.9 не работает. Поэтому решил его адаптировать. Это моя первая работа, так что ошибки очень вероятны. Перевод мой. На версиях ниже 4.7.9 не тестировал. (BIM) Quick S

  • edmsl На 4.7.11.1 работает:  Осталось только в CSS подправить стиль для темной темы. Попробую для Nexxe темы сделать.

  • Zero108 Я хотел сначала привязать стили к переменным, но что-то у меня не сложилось, и я отложил эту идею. Я сейчас дорабатываю этот плагин, может и стили все же поправлю заодно.

Posted Images

comment_195440
9 часов назад, edmsl сказал:

Sorry, but no. I did't work with cripto coins and I can't even test this plugin.

Ok, no problem

9 часов назад, edmsl сказал:

Yes, but he did not answer

comment_195475

Обнаружил еще одну проблему. Если, допустим, у файла указан скриншот по url, то в поиске он те отображается. Буду разбираться.

comment_195478

edmsl Уже пора переименовать плагин в Smart Search 1.1.0 и выложить отдельным файлом. От изначального кода там осталось 10%.

comment_195479
2 минуты назад, Zero108 сказал:

От изначального кода там осталось 10%

Нет, как раз-таки нового кода там процентов 10. Но то, что его лучше бы сделать отдельным файлом, я согласен. Все же плагин и сейчас развивается автором, и наличие моей ответвленной версии может сбить с толку.

Буду выпускать его под именем Smart Search, название мне нравится, хотя и не совсем подходит.

И да, проблему со скриншотом выше решил. Вечером скину новый файл сразу с исправлением.

comment_195480

edmsl Добавишь новую раздачу файла отдельно? Там удобнее будет не смешитвать. Плагин вьетнамского автора, если честно, кажется не таким уж хорошим после твоих нововведений и информации, что я узнал насчет защиты через php от флдуда. 

40 минут назад, edmsl сказал:

название мне нравится

Предложил название по аналогии с модулем умного поиска для Битрикса. Везде такая тема называется именно умным поиском в русском сегменте интернета. Умный поиск Голубева, например, постоянно развивается. Там есть учет типовых ошибок при наборе, учет неправильного языка при наборе и т.д. 

Edited by Zero108

comment_195481
10 минут назад, Zero108 сказал:

Добавишь новую раздачу файла отдельно?

Да, добавлю.

10 минут назад, Zero108 сказал:

Там есть учет типовых ошибок при наборе, учет неправильного языка при наборе и т.д.

В общем, есть куда развивать плагин если что.

comment_195482

edmsl могу прислать папку умного модуля Голубева. Может что из php оттуда взять можно? Хотя, что создано в Битриксе, умирает в нём же, так как система специфическая.

comment_195497

@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); убирает кавычки в начале и конце строки. Из-за этого точный поиск не срабатывает.

Собственно, мне не понятно, для чего это делается. Какая-то защита? Вроде из инпута в любом случае передается строка.

И проверка в цикле мне тоже не понятна. Разбивается вся строка на символы, а потом проверка на длину символа, где считаются все НЕ буквы и НЕ пробелы. Видимо, это какие-то специфические проверки безопасности, о которых я не знаю, но хотелось бы понять это все.

Edited by edmsl

comment_195523

Ответа я так и не нашел, поэтому решил делать, полагаясь на логику. В итоге написал так:

// Удалил эту строку отсюда и сделал удаление кавычек только для $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;
	}
}

Так как я не знаю, для чего нужна проверка циклом, а выполнялась она в оригинале со строкой без кавычек, то и сейчас она так же выполняется, но оригинальный запрос не меняется.

comment_195530
В 11.08.2023 в 10:53, edmsl сказал:

Проблема с поиском по конкретной фразе. Можно обернуть текст в двойные кавычки, и тогда поиск будет искать только те строки, где слова идут в указанном порядке. Но в плагине это не работает.

Можно и в одинарные ковычки обернуть. Кто как привый искать. Я оборачиваю на гугле в "поисковая фраза".

comment_195531

Zero108 Одинарные не работают на движке. Попробуй в стандартном поиске с одинарными и с двойными обернуть по очереди.

comment_195532

edmsl пока не заметил разницы между поисковая фраза, "поисковая фраза" и 'поисковая фраза'. Может у тебя получится? https://a108.net/search

comment_195535

Zero108 Поиск Эластик? Как-то странно он себя ведет все же. Но даже так разница очевидна.

Спойлер

firefox_2023-08-12_14-36-19.thumb.jpg.025367e7c687a22f3e06f17e259da1fb.jpg

firefox_2023-08-12_14-36-56.thumb.jpg.7af1c21fdc09e1bc7ac09abd67b6527c.jpg

firefox_2023-08-12_14-37-54.thumb.jpg.dac761eec6f30903038486f2de30ff6d.jpg

В последнем варианте, с двойными кавычками, по идее, должен найти только те строки, где слова строго в указанном порядке. Но 3-я выдача не соответствует ему. Внутри в статье тоже нет такой фразы.

comment_195538

edmsl Да, эластик. В настройках стоит: "Both apples and bananas".

Такое ощущение, что вьетнамский автор плагина понял, что любой вариант поиска (эластик или mysql) плевать хотел на ковычки, и забил на это.

Edited by Zero108

comment_195554

Zero108 Точный поиск с кавычками, пара новых опций поиска для виджета.

Новое название, следовательно изменены все классы CSS и id.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.