Drupal-Suche - Problem der nicht-indizierten Nodes
Mittwoch 27. Januar 2010 von bgrossmann
Als mir vor einer Weile in meinem Projekt auffiel, dass einige Nodes nicht gefunden wurden, war ich zunächst auf dem Holzweg und dachte, dass es etwas mit den vielen CCK-Feldern dieser Nodes zu tun hätte.
Aber weit gefehlt - es stellte sich nach mühsamer Suche heraus, dass das Problem durch den Import dieser Nodes hervorgerufen wurde. Offensichtlich erkennt Drupal nur dann Nodes als zu indizierend an, wenn “node_save” durchlaufen wird, was bei einem Import mit dem Node Import Module nicht geschieht. (Für lange Winterabende lohnt sich auch die Lektüre von Roberts Artikel Drupal Search: How indexing works.)
Eine Quick-and-Dirty-Lösung dafür ist, die betreffenden Nodes einmal kollektiv z.B. auf “published” zu setzen und dann manuell den Cron-Job für den Suchindex anzustoßen. In meinem Projekt kein Problem, allerdings nicht empfehlenswert, wenn z.B. viele Subscriber bei diesen Nodes mitlesen, da ein “published” zu einer Mailflut führen könnte ;)
Besser wäre es, entweder das Node Import Module umzuschreiben oder das im Hintergrund arbeitende Force Search Index Module (im Netz aufgestöbert) auf D6 umzuschreiben.
P.S. Tolle Sache mit einer Edel-Suche über Tomcat/Solr, aber auch diese setzt immer auf dem Drupal Search Index auf. Wenn also dort Probleme auftreten, hilft das nicht weiter.
Verwandte Beiträge:Dieser Beitrag wurde erstellt am Mittwoch 27. Januar 2010 um 07:01 und abgelegt unter Software. Kommentare zu diesen Eintrag im RSS 2.0 Feed. Sie können einen Kommentar schreiben, oder einen Trackback auf Ihrer Seite einrichten.




