Das mächtige Taxonomiesystem von Drupal zum Vergeben von Tags für Nodes wird standardmäßig mit einem Autocompletefeld aktiviert. Dieses Autocompletefeld führt eine MySQL Suche mit "LIKE" durch und zeigt alle Wörter an, die den vom User eingegebenen Teilstring enthalten. Es ist jedoch notwendig, dass der eingegebene Text exakt mit einem Teilstring eines Tags übereinstimmt. Wird z.B. das Wort "Weinachten" statt "Weihnachten" eingeben, werden keine Treffer angezeigt (es sei denn das Wort Weihnachten wurde fälschlicherweise schon einmal ohne "h" in der Datenbank des Taxonomiesystems hinterlegt.
Um für die Eingabe der Tags einen "Soundvergleich" (siehe auch Levenstein, SoundEX oder Phonem) zur Verfügung zu stellen, der das oben beschriebene "Wei(h)nachtsproblem" unter anderem löst, habe ich ein kleines Hilfsmodul entwickelt. Dieses Hilfsmodule, bsPhonemTags, basiert auf dem Phonem-Algorithmus und überschreibt den Autocomplete-Path der Tags im hook_menu. Damit der Soundex-Vergleich durchgeführt werden kann, gibt es eine neue Tabellenspalte in der Tabelle Terms. Dort wird jeweils die Soundex-Codierung der Tags gespeichert.
Das Modul gibt es hier zum Download: bsPhonemTags.
Bei Fragen können Sie uns gerne unverbindlich kontaktieren. Sehe Sie sich auch unseren Service zur Drupal-Entwicklung und zur Drupal-Beratung an.










Kommentar hinzufügen