Zeichenlimit der Joomla 1.5 Suche erhöhen
Standardmäßig kann man maximal 20 Zeichen für die Suche verwenden. Eingeführt wurde es, meines Wissens, um die Datenbank (SQL-Injection) zu schützen. In der Praxis sind 20 Zeichen aber meistens zu wenig. Daher hier eine Anleitung, wie man das Limit erhöhen kann. Wobei man dieses auch nicht zu hoch ansetzen sollte! Etwa 40-50 Zeichen reichen für eine komfortable Suche. Ich verwende bei meinen aktuellen Projekt 47.
In den genannten Dateien den Code suchen und an den entsprechenden Stellen die vorhandene 20 bzw. 19 durch euer neues Limit ersetzen:
/modules/mod_search.php
$maxlength = $width > 47 ? $width : 47;
/components/com_search/views/search/tmpl/default_form.php
<INPUT id="search_searchword" maxlength="47" name="searchword" …
/administrator/components/com_search/helpers/search.php
// limit searchword to 47 characters
if ( JString::strlen( $searchword ) > 47 ) {
$searchword = JString::substr( $searchword, 0, 46 );
// von 0 bis 46 sind es 47 Zeichen!
/language/en-GB/en-GB.com_search.ini
SEARCH_MESSAGE=Search term must be a minimum of 3 characters and a maximum of 47 characters.
Verwendet man zusätzliche Sprachen so muss man diese ebenfalls ändern:
/language/de-DE/de-DE.com_search.ini
SEARCH_MESSAGE=Das Suchwort muss mindestens drei Zeichen und maximal 47 Zeichen enthalten!
Abhängig vom verwendeten Template muss dieses eventuell auch angepasst werden:
/templates/TEMPLATE/html/com_search/search/default_form.php
<input type="text" name="searchword" id="search_searchword" maxlength=”47" …
/templates/TEMPLATE/html/mod_search/default.php
$output = '<input name="searchword" id="mod_search_searchword" maxlength="47" ...
Ein Großteil des Codes stammt von http://www.geekgumbo.com!
