Главная страница / DataLife Engine / Плагины для DLE / ModLiveSearch - модуль быстрого поиска по заголовкам новостей

ModLiveSearch - модуль быстрого поиска по заголовкам новостей

01 апреля 2025, Вторник
57
3
[ Рейтинг: 5 / Голосов: 1 ]

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

Особенности:
🔹 Подсветка найденных фраз в результатах поиска. 
🔹 Ajax-поиск без перезагрузки страницы. 
🔹 Горячая клавиша «Ctrl + Enter» для отправки формы (удобно в админпанели). 
🔹 Совместимость со всеми версиями DLE 10.0 и выше (на более старых версиях не тестировался). 
🔹 Простая установка и удаление — полностью автоматические.

Идеальное решение для админов, которым нужен быстрый и точный поиск по заголовкам!

Автор: new-dev
Источник

Комментарии:
{login}

Твой комментарий..

 
  1. byroot Администраторы 30 мая 2025 10:55

    При установке на DLE 18.0 у меня была ошибка

    ошибка "Fatal error: Uncaught Error: Call to undefined function ModLiveSearch\strip_data()" в строке $str = preg_quote(strip_data(POST('query')));
    Полная функция с этой ошибкой:
    
    	public function highLightTitle($title, $tpl = null) {
    		if ($tpl) {
    			$title = str_replace('&', '&', $this->helper->htmlspecialchars($title));
    		}
    		
    		$str = preg_quote(strip_data(POST('query')));
    		$title = preg_replace('#('.$str.')+#Usiu', '<span style="background-color:'.$this->config->highlight_title_bgcolor.'; display:inline;"><font color="'.$this->config->highlight_title_color.'">$1</font></span>', $title);
    		
    		if ($tpl) {
    			$tpl->set('{title}', $title);
    		} else {
    			return $title;
    		}
    	}

    исправил функцию на эту

    public function highLightTitle($title, $tpl = null) {
        if ($tpl) {
            $title = str_replace('&amp;amp;', '&amp;', $this->helper->htmlspecialchars($title));
        }
        
        $query = POST('query');
        $query = $this->helper->htmlspecialchars($query);
        $query = strip_tags($query);
        $str = preg_quote($query);
        
        $title = preg_replace('#('.$str.')+#Usiu', '<span style="background-color:'.$this->config->highlight_title_bgcolor.'; display:inline;"><font color="'.$this->config->highlight_title_color.'">$1</font></span>', $title);
        
        if ($tpl) {
            $tpl->set('{title}', $title);
        } else {
            return $title;
        }
    }

    ошибка пропала, подсветка текста в поиске идёт.

    --------------------
    🎬🎬🎬 Мои услуги по DLE 👉👉👉 https://byroot.ru/uslugi.html 🎬🎬🎬
  2. Александр 17 мая 2025 18:17

    ставил на версию 15.2, работает даже лучше чем стандартный быстрый поиск и точнее работает, спасибо большое!

    1. byroot Администраторы 18 мая 2025 23:59

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

      --------------------
      🎬🎬🎬 Мои услуги по DLE 👉👉👉 https://byroot.ru/uslugi.html 🎬🎬🎬
Модули для создания киносайта и не только на базе DataLife Engine, и многое другое...
Просто блог Евгения Попова, он же - byroot © 2015-2025 | Карта сайта