Seite 1 von 1
Volltextsuche mit Und-Oder-Verknüpfung
Verfasst: Fr 12. Nov 2010, 09:10
von beloved_behated
Hallo,
ich suche eine Volltextsuche die eine Und-Oder-Verknüpfung beinhaltet und wenn möglich die Ergebnisseiten nach Relevanz sortiert.
Dabei sollen Seiten, die den Suchbegriff in der Überschrift enthalten, als erstes ausgegeben werden.
Gibt es da bereits ein Modul, was gegebenfalls auch einfach anzupassen ist?!
Vielen Dank im Vorraus!:)
Re: Volltextsuche mit Und-Oder-Verknüpfung
Verfasst: Fr 12. Nov 2010, 09:38
von Dodger77
Die Suche des Beispielmandanten sollte da einen guten Ansatzpunkt liefern können. Diese basiert allerdings nicht auf einem MySQL-FULLTEXT, sondern benutzt interne Contenido-Funktionen zur Indexierung der Inhalte.
Kombinationen wie UND/ODER sind dort auch bereits umgesetzt. Zum Testen einfach mal suchen nach:
ihre geklappt
ihre AND geklappt
ihre + geklappt
ihre OR geklappt
Um da tiefer einzusteigen, lohnt sich ein Blick in die Datei "contenido/classes/class.search.php".
In der Klasse "SearchResult" darin wird die Gewichtung und Reihenfolge der Suchergebnisse umgesetzt. Eine stärkere Gewichtung von bestimmten Inhalten (z.B. CMS_HEADLINE[1]) ist dort aber noch nicht umgesetzt.
Re: Volltextsuche mit Und-Oder-Verknüpfung
Verfasst: Fr 12. Nov 2010, 10:06
von beloved_behated
Die Und-Oder-Verknüpfung funktioniert aber nicht richtig. Ich habe es gerade noch einmal getestet. Voreingestellt ist die Und-Verknüpfung aber er sucht nicht nach den zusammenhängenden Wörtern.
Anscheinend sucht er nur nach Artikeln, wo beide Wörter vorkommen. Diese müssen aber nicht zwingend hintereinander stehen. Ich möchte aber nur Artikel ausgegeben habe, die den genauen Wortlaut meiner Eingabe enthalten. Also es soll nur der Artikel gefunden werden der z.B. "Volltextsuche mit Und-Verknüpfung" enthält und nicht "Volltextsuche" und an einer anderen Stelle "Und-Verknüpfung".
Re: Volltextsuche mit Und-Oder-Verknüpfung
Verfasst: Fr 12. Nov 2010, 10:33
von Dodger77
Das ist aber keine UND-Verknüpfung, sondern eine Suche nach einer Phrase. Die dürfte mit dem vorhanden Modul in der Tat erst mal so nicht möglich sein. Ein anderer Ansatz wäre natürlich ein solches Modul:
http://forum.contenido.org/viewtopic.php?f=30&t=9023
Eine Suche wie bei Google nach z.B. "ihre installation hat geklappt" funktioniert aber auch damit nicht direkt. Das müsste auch dort ergänzt werden.
Durch die Nutzung eines FULLTEXT-Index könnte man auch eine Phrasensuche jedoch umsetzen:
http://dev.mysql.com/doc/refman/5.1/de/ ... olean.html
Da sind dann eine ganze Reihe von Operatoren möglich. Allerdings wird die Umsetzung aktuell nicht funktionieren, da die Inhalte der Artikel in der con_content URL-kodiert vorliegen.
Re: Volltextsuche mit Und-Oder-Verknüpfung
Verfasst: Fr 12. Nov 2010, 10:47
von beloved_behated
Da die Kundin eine solche Suche wünscht, bleibt mir wohl nichts anderes übrig als die Tabelle con_content noch einmal in einer extra Tabelle ohne URL-Kodierung zu speichern und die Suche darüber laufen zu lassen.
Dann muss ich diese Tabelle zwar immer abgleichen, aber eine andere Möglichkeit bleibt mir wohl nicht.
Trotzdem vielen Dank für deine Hilfe!!
Re: Volltextsuche mit Und-Oder-Verknüpfung
Verfasst: Fr 12. Nov 2010, 21:39
von kummer
lucene ist wohl, was du an dieser stelle benötigen würdest.