Переделка модуля ПОИСК для шапки сайта, плюс хак компонента Поиск

+21
2.45K
Решил поделиться своим модулем поиска. Выглядит следующим образом
Иллюстрация
ОПИСАНИЕ: поиск как в Яндексе на главной — при "тыке" на ссылку сверху происходит поиск по выбранному компоненту, плюс пример поиска (пока берутся теги из компонент, но именно поиск по тегам не работает, сделаю попозже). При нажатии на ссылку настройка поиска — появляется компонент поиска с открытым окном настроек.

Сначала апгрейдим компонент поиск как писал уважаемый Fuze в этом посте, затем скачиваем архив, и:

1.выполняем sql запрос для добавления столбца с короткими именами компонентов, далее вам самим надо добавить для
каждой строки в таблице cms_components короткое имя компонента (например для ФОТОГАЛЕРЕИ — пишем ФОТО и т.д.)

2.обновляем model.php в компоненте com_search
3.копируем файл модуля и шаблон для модуля в соответствующую папку вашего шаблона.
4. Также добавляем стили из файлов addto_styles.css и меняем com_search_addto_styles.css(если не меняли при обновлении компонента ПОИСК до в.1.8.1) в ваш styles.css.

Архив брать тут
Вопросы будут — пишите...

Если моя информация была для вас полезной, можно отблагодарить меня :
Yandex счет 41001684845537
Webmoney R750806594532
+1
Fuze Fuze 13 лет назад #
Код PHP:
SELECT COUNT(*) as `count` from cms_tags WHERE (target="content" OR target="catalog" OR target="blogpost" OR target="map")
запрос будет выполняться долго, лучше сделать target IN ()
Файл модели лучше взять отсюда и там поправить запрос на выборку компонентов.
+1
Крот Крот 13 лет назад #
обновил архив
0
Atid Atid 13 лет назад #
демка есть :)?
0
Крот Крот 13 лет назад #
именно демки нет... есть рабочий сайт
0
nikitka nikitka 13 лет назад #
Можно взглянуть на рабочий сайт?
Олег Васильевич я Олег Васильевич я 13 лет назад #
Комментарий удален
Олег Васильевич я Олег Васильевич я 13 лет назад #
Комментарий удален
Олег Васильевич я Олег Васильевич я 13 лет назад #
Комментарий удален
Олег Васильевич я Олег Васильевич я 13 лет назад #
Комментарий удален
Олег Васильевич я Олег Васильевич я 13 лет назад #
Комментарий удален
0
Крот Крот 13 лет назад #
по 1 пункту -
должно быть обноляем model.php в компоненте com_search, исправил)

по 2 пункту -
выполняем sql запрос для добавления столбца с короткими именами компонентов, далее вам самим надо добавить для каждой строки в таблице cms_components короткое имя компонента (например для ФОТОГАЛЕРЕИ - пишем ФОТО и т.д.)
. После того как добавите сокращенное имя (я не во все компоненты добавлял) - если указано, будет отображаться именно короткое имя.
0
Крот Крот 13 лет назад #
пункт 2 невнимательно прочитал... спасибо что напомнили, сделаю вскоре отображение коротких имен в самом компоненте. И сортировку по дате публикации по умолчанию чтоб стояла!
0
Крот Крот 13 лет назад #
чтобы в результатах поиска были короткие имена делаем следующее

в файле шаблона компонента поиск com_search_text.tpl в папке вашего шаблона находим строку
Код PHP:
                    {$enable_component.title} </label></td>
и меняем на

Код PHP:
            {if $enable_component.short_title==""} 
                    {$enable_component.title}
            {else}
                    {$enable_component.short_title}
            {/if}
</label></td>

Еще от автора

Инвайтер 1.9 для 1.10.6
Доброго всем времени суток! Решил нарушить сложившуюся здесь традицию и решил вернуться сюда с обновлениями.
Инстант "по взрослому". Часть 2. Авторизация. Аякс. v1.10
Доброго всем времени суток! Продолжая серию Инстант "по взрослому", сегодня хотел бы показать более мощный плагин авторизации.
Инстант "по взрослому". Часть 1. Авторизация. Счетчик неверных входов. v1.10
Доброго всем дня! Продолжим наши уроки по усовершенствованию Инстанта. Сегодня мы будем изучать и усовершенствовать первую ветку Инстанта.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.