LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
26.05.2013, 04:58:13 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 2.5 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Изменить ограничение длины поиска в 20 символов  (Прочитано 11912 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Sulpher
Support Team
*****

Репутация: +339/-10
Offline Offline

Пол: Мужской
Сообщений: 1485


Миграция на Joomla 2.5 / 3.0


« : 14.04.2009, 17:18:40 »

Не секрет, что ограничение в 20 символов в поисковом механизме несколько ограничивает возможности Joomla, особенно если вы используете портал или интернет магазин и ищете длинное словосочетание.  Удивительно, что разработчики не вынесли такой параметр в админку com_search.
Ниже расскажу, как исправить проблему.

1. Открываем administrator/components/com_search/helpers/search.php и находим такой кусок кода (строка 58):

Код:
function limitSearchWord(&$searchword)
   {
      $restriction = false;

      // limit searchword to 20 characters
      if ( JString::strlen( $searchword ) > 20 ) {
         $searchword    = JString::substr( $searchword, 0, 19 );
         $restriction    = true;
      }

заменяем на:

Код:
function limitSearchWord(&$searchword)
   {
      $restriction = false;

      // limit searchword to 50 characters
      if ( JString::strlen( $searchword ) > 50 ) {
         $searchword    = JString::substr( $searchword, 0, 19 );
         $restriction    = true;
      }

Т.е. меняем число 20 на 50. (можете задать своё значение)

2. В модуле поиска \modules\mod_search\tmpl\default.php (строка 6):
есть параметр: maxlength="'.$maxlength.'" - здесь берётся значение, заданное в модуле mod_search. Измените значение с 20 до 50 в админке модули или путём редактирования XML файла модуля.

3. Открываем \components\com_search\views\search\tmpl\default_form.php (строка 12):
заменяем:
Код
<input type="text" name="searchword" id="search_searchword" size="30" maxlength="20" value="<?php echo $this->escape($this->searchword); ?>" class="inputbox" />

на:
Код
<input type="text" name="searchword" id="search_searchword" size="30" maxlength="50" value="<?php echo $this->escape($this->searchword); ?>" class="inputbox" />

Т.е. меняем число 20 на 50. (можете задать своё значение)

Готово.
« Последнее редактирование: 26.10.2009, 22:57:32 от PaLyCH » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.18 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet