Startseite arrow Joomla arrow Eine einfache Methode, die Suchfunktion von Joomla zu verbessern
Eine einfache Methode, die Suchfunktion von Joomla zu verbessern
Artikel bookmarken:
Delicious
Technorati
Mister Wong
10.09.2007

Joomla bringt - wie sich das für ein CMS gehört - eine eingebaute Suchfunktion mit. Diese kann jedoch bei Suchbegriffen, die aus mehreren Wörtern bestehen, nicht überzeugen.

In diesem Fall sucht Joomla nämlich separat nach jedem Begriff einzeln und wirft alle Ergebnisse aus, die es dabei findet. Und das ist in 99% der Fälle nicht das erwünschte Ergebnis.

Es bedarf nur eines kleinen Eingriffs, um die Suchfunktion zu verbessern - allerdings geht das ein wenig auf Kosten der Wartbarkeit, denn es handelt sich dabei um einen Core-Hack, den man nach künftigen Updates erneut einspielen muss. Da es sich jedoch nur um eine kleine Veränderung handelt, ist das verschmerzbar.

Die Suchlogik ist falsch vordefiniert

Nehmen wir einmal an, wir hätten auf unserer Website einen Artikel, in dem die Begriffe "Joomla" und "SEO" vorkommen. Dieser Artikel befasst sich mit den Möglichkeiten, suchmaschinenoptimierte Seiten mit Joomla zu erstellen.

Darüber hinaus haben wir auf unserer Website noch etliche weitere Artikel, in denen lediglich der Name "Joomla" in verschiedenen Zusammenhängen auftaucht, da wir uns mit diesem System schon eine Weile beschäftigt haben.

Benutzt nun ein Besucher unsere Suchfunktion mit den Begriffen "Joomla SEO", so passiert folgendes: Joomla durchsucht in seiner Datenbank alle Content-Items auf das Vorkommen dieser beiden Begriffe - und zwar nicht in Kombination, sondern einzeln. (Für Mathematiker und Entwickler: Die Verknüpfung der beiden Suchbegriffe findet nicht mit einem logischen UND, sondern mit einem logischen ODER statt.) Das führt zu folgendem Ergebnis:

Neben dem Artikel, in dem es um "Joomla" UND "SEO" geht, werden auch alle anderen Artikel gefunden, die den Begriff "Joomla" beinhalten. Der eigentlich gesuchte Artikel kann dabei durchaus in der Masse irrelevanter Treffer untergehen.

Abhilfe einmal manuell durch den Benutzer ...

Die Such-Komponente von Joomla ermöglicht es zwar, durch das Setzen von Optionen ("Jedes Wort" / "Alle Wörter" / "Exakter Ausdruck") die Suchlogik zu verändern. Vorbelegt ist jedoch die Option "Jedes Wort", die wie oben beschrieben mit dem logischen ODER funktioniert. Und diese Vorbelegung ist wenig sinnvoll.

joomla-search-options Denn seien wir einmal ehrlich: Der durchschnittliche Besucher schreibt seine Suchbegriffe ins Feld und schickt die Anfrage sofort ab, ohne sich um irgendwelche Zusatzoptionen zu kümmern. Er erwartet einfach von vornherein ein ähnliches Verhalten wie bei Google, Yahoo oder anderen bekannten Suchmaschinen. (Die suchen mittels logischem UND.)

Abgesehen davon ist auf den meisten Sites die Suchfunktion mittels des standardmäßigen mod_search-Moduls von Joomla im Template eingebunden, und das bietet diese Optionsauswahl gar nicht, sondern sucht ebenfalls einfach mit logischem ODER. Leider liefert Joomla dem Anwender dann in der Regel viele irrelevante Suchergebnisse zurück, durch die man sich mehr oder weniger mühsam durchwühlen muss.

... und einmal (besser) durch den Webmaster

Besser ist es da, den Erwartungen seiner Besucher entgegenzukommen und selbst Hand anzulegen. Was in der Regel gewünscht ist, ist das Verhalten der Option "Alle Wörter", das entspricht dem logischen UND. Joomla kann durchaus mit dieser Methode suchen - man muss es ihm nur sagen.

Die verblüffend einfache Lösung besteht für Joomla 1.0.x darin, in drei Dateien eine kleine Änderung vorzunehmen und Joomla damit ein neues Default-Verhalten vorzuschreiben. Es handelt sich dabei um die Dateien

  • /components/com_search/search.html.php
  • /components/com_search/search.php
  • /modules/mod_search.php.

Welche Änderungen das im einzelnen sind, habe ich in dem Artikel Die Suchfunktion liefert zu viele bzw. unerwünschte Ergebnisse auf Troubleshooting Joomla beschrieben. Natürlich gilt: Vor dem Ändern Backups der betroffenen Dateien machen - und die Änderungen dokumentieren, damit man sie bei späteren Updates wieder nachziehen kann.

Übrigens: In den bisher erschienenen Versionen von Joomla 1.5 ist das Verhalten der Suchfunktion genauso wenig praxisgerecht wie in 1.0.x.

Update: Ich habe die modifizierten Dateien zusammengepackt und für die letzten drei Joomla-1.0.x-Versionen hier hinterlegt.

Verwandte Artikel:

Keine verwandten Artikel gefunden
Kommentare (5)Add Comment
Frage
geschrieben von Marko Master, 11.09.2007
Könntest du nicht einfach die Datein bereitstellen? Das wäre feinsmilies/smiley.gif Wie ich gelesen habe könnte einfach jeder Datein für das neue Joomla 1.5 einreichen, und somit könntest du die Änderung mit der Suche doch einreichen... Oder meinst du etwa nicht?

Mfg Marko Master
Yup.
geschrieben von Admin, 12.09.2007
Könntest du nicht einfach die Datein bereitstellen?

Mal schauen ... ist vielleicht eine Idee.

Wie ich gelesen habe könnte einfach jeder Datein für das neue Joomla 1.5 einreichen, und somit könntest du die Änderung mit der Suche doch einreichen...

Ich hatte vor Urzeiten diesen Vorschlag schon mal im Feature-Request-Tracker eingereicht, ich weiß gar nicht, ob das noch zu Zeiten von Mambo oder schon Joomla war. Hat irgendwie keinen interessiert.

Viele Grüße,
Klaus
...
geschrieben von Admin, 12.09.2007
Könntest du nicht einfach die Datein bereitstellen?

Ist soeben geschehen.
...
geschrieben von Holzturm, 13.09.2007
Danke für den Tip!. Umbedingt nochmal einsenden, das wäre absolut wünschenswert, dass diese Änderung in den Core übernommen wird!
Gesagt, getan
geschrieben von Admin, 09.02.2008
Ich hatte Andrew Eddie nochmal direkt darauf angesprochen, und siehe da ... in Joomla 1.5 ist das endlich entsprechend geändert worden. Dort braucht man nun keinen Core-Hack mehr, um eine vernünftige Suchfunktion zu haben.

Kommentar schreiben
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
kleiner | groesser

busy
 
Artikel bookmarken:
Delicious
Technorati
Mister Wong

Kommentare

Joomla 1.6: SEO verbessern
Hallo zur Info dein Link von oben geht nicht mehr Community ausdrückl...

17 Joomla-Template-Clubs im Vergleich
Ich bin Gavick Mitglied. Hilfestellung im Forum gibt es fast gar nich...

17 Joomla-Template-Clubs im Vergleich
vielen dank für die info, ich finde die beschreibung in den "agb" von...

17 Joomla-Template-Clubs im Vergleich
Hallo, üblicherweise gilt das Nutzungsrecht bei den Template-Clubs "...

17 Joomla-Template-Clubs im Vergleich
hallo, vielen dank für diese tolle übersicht. was ich noch nicht gan...

17 Joomla-Template-Clubs im Vergleich
Vielen Dank für die ausführliche Liste. Es ist gar nicht einfach ein...

Déja vu: Entwickler verlassen das Mambo-Projekt und gründen ...
Hallo Wolli, wenn es sich in der Tat um die Version 4.5 handeln sollt...

Die besten Joomla-Templates

RocketTheme Template Club