-

Produktsuchmaschine in Drupal mit Apache Solr-Integration - Anleitung

Produktsuche ist heute eine Schlüssel-Funktion im E-Commerce. Dieser Artikel zeigt, wie man eine erweiterte Produktsuchmaschine auf Basis von Drupal und dessen Integration mit Apache Solr erstellt. Durch die Kombination von Drupal, dem Droopler-Installationsprofil und Solr kann ein leistungsstarkes Werkzeug geschaffen werden, das es Kunden erleichtert, große Datensätze schneller zu navigieren und zu durchsuchen. Ich empfehle Ihnen, den Blogbeitrag zu lesen oder das Video in der Serie „Nowoczesny Drupal“ anzusehen (das Video ist auf Polnisch).

Was ist Apache Solr?

Apache Solr ist ein fortschrittliches Suchsystem, das für die schnelle Verarbeitung und Suche in riesigen Datensätzen ausgelegt ist. Es ist effizienter als herkömmliche, auf SQL-Datenbanken basierende Lösungen, und seine Fähigkeiten sind besonders im Kontext komplexer E-Commerce-Seiten nützlich.

Wie funktioniert es? Es speichert Informationen so, dass sie leicht durchsucht werden können und ermöglicht es Ihnen, Daten schnell anhand komplexer Anfragen zu finden.

Apache Solr ermöglicht unter anderem die Suche in spezifischen Feldern, die Verwendung von Sonderzeichen, den Einsatz logischer Operatoren (UND, ODER, NICHT), Autovervollständigung von Anfragen, ungefähre Suche (mit Fehlertoleranz), Rechtschreibprüfung und vieles mehr.

Welche Funktionen bietet Apache Solr?

Apache Solr ist mit mehreren Funktionen ausgestattet, die es zu einem äußerst vielseitigen Suchwerkzeug machen. Zusätzlich zu den oben genannten sind die wichtigsten:

  1. Echtzeitsuche - bietet sofortigen Zugriff auf Ergebnisse.
  2. Filtern nach Feldern - ermöglicht die Suche nur in ausgewählten Abschnitten oder Attributen von Produkten.
  3. Autovervollständigung und Rechtschreibprüfung - helfen den Nutzern, die gesuchten Produkte schnell zu finden, selbst mit Tippfehlern.
  4. Gruppierung der Ergebnisse - Apache Solr kann Ergebnisse nach Kategorie gruppiert anzeigen, was es den Nutzern erleichtert, die Produkte zu finden, die sie interessieren.

Implementierung einer Produktsuchmaschine in Drupal – Auswahl eines Installationsprofils

Bevor wir anfangen, müssen wir die Umgebung für eine einfache Konfiguration von Apache Solr vorbereiten.

Installation und Konfiguration des Droopler-Profils

In unserem Beispiel werden wir das Droopler-Installationsprofil verwenden, das speziell für die Integration mit Apache Solr vorbereitet ist. Droopler enthält bereits fertige Inhaltstyp-Produkte, sodass wir eine Produktsuchmaschine erstellen können, ohne jedes Feld manuell anlegen und konfigurieren zu müssen.

Das Endergebnis - eine fertige Produktsuchmaschine

Bevor wir zu den schrittweisen Anleitungen kommen, lassen Sie uns sehen, welches Ergebnis wir anstreben. Sobald die Einrichtung abgeschlossen ist, erhalten wir eine fertige Produktsuchmaschine, die es den Nutzern ermöglicht, nach Buchstaben, Kategorien, Tags und ganzen Phrasen zu suchen. Auch die Anzahl der Ergebnisse für jede Kategorie und jeden Tag wird angezeigt, was dem Nutzer schnell zeigt, wie viele Produkte die Kriterien erfüllen.

Eine fertige Produktsuchmaschine für eine Website basierend auf dem Droopler-Installationsprofil


Erforderliche Module für die Integration von Apache Solr mit Drupal

Um Drupal mit Solr zu verbinden, ist es notwendig, die relevanten Module zu installieren:

  1. Search API
  2. Search API Solr
  3. Search API Autocomplete
Solr-Module in Drupal sind erforderlich, um eine bequeme Produktsuchmaschine auf der Website aufzubauen


Konfiguration des Solr-Servers

Der nächste Schritt besteht darin, den Solr-Server in Drupal zu konfigurieren. Hier spezifizieren wir die Server-URL, den Port und die Anmeldedaten wie Benutzername und Passwort, falls Solr durch das BasicAuth-Protokoll gesichert ist.

Konfiguration des Solr-Servers in Drupal durch Ausfüllen der entsprechenden Daten, wie der Server-URL


Konfigurieren von Indizes in Drupal

Ein Index in Drupal ist eine Struktur, die die Daten speichert, die wir durchsuchen möchten.

Wir fügen den neuen Index in Search API hinzu. Dann kümmern wir uns um die Konfiguration:

  1. Wir benennen den Index (zum Beispiel „Produktindex“).
  2. Wir legen die Arten von Inhalten fest, die wir indexieren möchten, wie Produkte, Artikel oder Seiten (in unserem Fall können wir „Produkte“ wählen, wenn der Index für die Produktsuche ist).
  3. Wir wählen den Server: In den Indexeinstellungen wählen wir den zuvor konfigurierten Apache Solr-Server als Indexierungsquelle aus (dies ermöglicht es Drupal, Daten an Solr zu senden, das die Verarbeitung übernimmt).
  4. Wir konfigurieren Felder für die Indexierung: Um ein neues Feld hinzuzufügen, klicken wir auf „Feld hinzufügen“ und wählen die entsprechenden Felder aus der Liste aus. Felder wie „Titel“ oder „Beschreibung“ sind für die Volltextsuche nützlich, während „Kategorien“ und „Tags“ als Filter verwendet werden können.
  5. Wir passen die Feldeinstellungen an: Wir legen fest, welche Felder im Index enthalten sein werden und wie sie durchsucht werden. Zum Beispiel können wir wählen, dass die Textfelder (Titel, Beschreibung) volltextdurchsuchbar sind, was die Suche nach Phrasen ermöglicht.
Konfiguration von Indizes, die in Drupal mit Apache Solr-Modulen zur Produktsuchmaschine gespeichert werden


Sobald der Index konfiguriert ist, führen wir ein Reindexing durch, um sicherzustellen, dass alle Daten für Solr verfügbar sind.

Um dies zu erreichen:

  1. Wir wechseln zum Search API-Tab: Im Drupal-Admin-Panel öffnen wir den Search API-Bereich, wo wir eine Liste aller konfigurierten Indizes sehen können.
  2. Wählen Sie den Index, der neu indexiert werden soll: Finden und wählen Sie den Index, der die Daten enthält, die neu indexiert werden sollen (z. B. „Produktindex“).
  3. Wir überprüfen die Indexeinstellungen:
    • Wir verifizieren, dass die Felder für die Indexierung ordnungsgemäß konfiguriert sind und alle Elemente enthalten, die für die Suche verfügbar sein sollen.
    • Wir verifizieren, dass der Solr-Server ausgewählt ist, um eine korrekte Integration zu gewährleisten.
  4. Wir fügen den Inhalt zur Reindexierung in die Warteschlange hinzu:
    • Klicken Sie auf die Option „Elemente für die Reindexierung in die Warteschlange einreihen“.
  5. Wir starten den Reindexierungsprozess: Starten Sie die Reindexierung, indem Sie „Jetzt indexieren“ oder die „Cron-Funktion verwenden“ klicken, damit das System automatisch alle Elemente verarbeitet.
  6. Wir überwachen den Prozess: Beobachten Sie, wie die Daten indexiert werden, und achten Sie auf die Anzahl der verarbeiteten Elemente. Der Prozess kann eine Weile dauern, besonders bei großen Datenmengen.
  7. Wir überprüfen den Status des Indexes: Sobald das Reindexieren abgeschlossen ist, überprüfen wir, ob alle Elemente korrekt indexiert wurden und für die Suche bereit sind.
Nach der Indexierung Statusüberprüfung für die Produktsuchmaschine in Drupal mit dem Apache Solr-Modul


Erstellen einer Ansicht für die Produktsuchmaschine

Nun werden wir die Erstellung einer benutzerfreundlichen Ansicht unserer Produktsuchmaschine betrachten.

Erstellen einer neuen Ansicht

In Drupal ermöglicht die Ansicht die benutzerfreundliche Darstellung indizierter Daten. Wir konfigurieren die neue Ansicht wie folgt:

  1. Wir fügen eine Ansicht hinzu: Unter Struktur > Ansichten klicken wir auf „Neue Ansicht hinzufügen“ und geben ihr einen Namen, z. B. „Produktsuche“. Wir wählen einen Solr-Index, z. B. „Produktindex“ als Datenquelle.
Hinzufügen einer neuen Ansicht im Struktur-Tab, dann Ansichten in Drupal für eine Produktsuchmaschine

 

  1. Wir legen die Darstellung fest: Wir legen fest, wie die Ergebnisse dargestellt werden sollen (Liste oder Raster) und wie viele Ergebnisse pro Seite angezeigt werden.
Einstellung in Drupal, wie Ansichtselemente für die Produktsuchmaschine auf der Website angezeigt werden

 

  1. Wir fügen Felder hinzu: Wir wählen Felder aus, die angezeigt werden sollen (z. B. Titel, Beschreibung, Miniatur, Kategorie). Für Bilder legen wir eine Miniatur mit entsprechenden Abmessungen fest.
Hinzufügen von anzuzeigenden Feldern in der Produktsuchmaschine (z. B. Titel, Kategorie) auf einer Drupal-Website

 

  1. Filter hinzufügen: Fügen Sie einen Volltextfilter für die Stichwortsuche und zusätzliche Filter hinzu, z. B. nach Kategorien und Tags.

 

  1. Stichwort-Highlighting und Autovervollständigung: Wir werden diesen Schritt später im Artikel im Detail behandeln.
  2. Ansicht speichern und testen: Speichern Sie die Einstellungen, testen Sie die Suche und verifizieren Sie, dass alle Filter und Funktionen korrekt arbeiten.

Filter und Stichwort-Highlighting

Wir fügen Filterfunktionen hinzu, wie die Volltextsuche und die Fähigkeit, Schlüsselwörter hervorzuheben (sogenanntes Highlighting). Wir klicken auf „Filter hinzufügen“ und wählen den Volltextsuche-Filter, dann konfigurieren wir ihn so, dass die wichtigsten Felder, wie Titel und Beschreibung, durchsucht werden.

Im nächsten Schritt fügen wir zusätzliche Filter nach Feldern wie Kategorien und Tags hinzu, die es ermöglichen, die Suchergebnisse einzugrenzen. Nun fügen wir Schlüsselwörter-Hervorhebung hinzu: Wir gehen zum Tab „Prozessoren“ und aktivieren „Hervorheben“ für ausgewählte Felder, wie Titel und Beschreibung.

Video file

 

Mit dieser Funktion werden Suchbegriffe hervorgehoben, was dem Nutzer erleichtert zu verstehen, warum ein bestimmtes Produkt in den Ergebnissen erscheint.

Erweiterte Funktionen der Produktsuchmaschine

Im Folgenden werden wir die Funktionen untersuchen und diskutieren, die zu unserer Produktsuchmaschine hinzugefügt werden können. Sie ermöglichen eine erweiterte Suche und sind sehr benutzerfreundlich.

Autovervollständigungsfunktion und Rechtschreibkorrektur (Spell Check)

Solr bietet Ihnen auch erweiterte Funktionen wie Autovervollständigung, die es ermöglicht, während der Eingabe eines Passworts Vorschläge anzuzeigen. Dies wird durch das Solr Autocomplete-Module implementiert. Das Spell Check-Modul hilft hingegen einem Nutzer, der Tippfehler gemacht hat, indem es alternative Schlüsselwörter vorschlägt.

Um beide Funktionen anzuwenden, müssen Sie:

  1. Das Autocomplete-Modul aktivieren:
  • Aktivieren Sie in Drupal das Solr Autocomplete-Modul. Dann klicken Sie in den Solr-Indexeinstellungen auf den Tab „Autovervollständigung“ und aktivieren es für die ausgewählte Ansicht, wie „Produktsuche“.
  • In den Optionen können Sie die Darstellung der Ergebnisse anpassen, sodass die Nutzer bei der Eingabe von Anfragen Vorschläge erhalten.  
  1. Das Spell Check-Modul hinzufügen, um die Rechtschreibung zu korrigieren:
    • Aktivieren Sie das Spell Check-Modul. Fügen Sie anschließend ein neues Textfeld im Index hinzu, wie „Aggregierte Felder“, das die Rechtschreibkorrektur für Felder wie „Titel“ und „Beschreibung“ übernimmt.
    • Aktivieren Sie die Spell Check-Funktion in den Indexeinstellungen, sodass bei Tippfehlern korrekte Vorschläge angezeigt werden.

Nachdem Sie die Änderungen gespeichert haben, führen Sie erneut ein Reindexing durch. Autovervollständigung und Rechtschreibkorrektur werden aktiv sein und bequemere Suchen unterstützen.

Rechtschreibkorrekturtest mit dem Spell Check-Modul im Droopler-Installationsprofil

Suche nach Kategorien und Tags

Mit dem Facets-Modul ist es möglich, Produkte nach Kategorien und Tags zu suchen. Facets erstellt Blöcke, die an verschiedenen Stellen auf der Seite platziert werden können, sodass es den Nutzern leicht fällt, Ergebnisse basierend auf den Kategorien oder Tags zu filtern, die sie interessieren.

Konfiguration der Facets

Wir konfigurieren Facets, indem wir sie in Drupal aktivieren. Dann gehen wir zu den Moduleinstellungen und wählen die Ansicht aus, für die wir Facets hinzufügen möchten (in unserem Fall die „ps“-Ansicht).

Wir klicken auf „Facet hinzufügen“ („Facets hinzufügen“) und wählen das Feld aus, nach dem wir filtern möchten, wie „Kategorien“ oder „Tags“. Wir legen den Namen des Facets und die Anzeigeoptionen fest (z. B. als Liste von Links) und aktivieren die Option „Anzahl der Ergebnisse anzeigen“, damit die Nutzer die Anzahl der Produkte in jeder Kategorie sehen können. Schließlich gehen wir zu „Block Layout“ („Block Layout“) und platzieren die neu erstellten Facets-Blöcke in einer ausgewählten Region der Seite, wie einer Seitenleiste, sodass sie in der Suchansicht sichtbar sind.

Konfiguration der Facets und Änderungen der Blockanordnung in Drupal für eine Produktsuchmaschine

Produktsuchmaschine mit Apache Solr-Integration – Zusammenfassung

Die Integration von Drupal mit Apache Solr unter Verwendung eines Droopler-Profils ermöglicht es Ihnen, eine leistungsstarke und benutzerfreundliche Produktsuchmaschine zu erstellen. Funktionen wie Schlüsselwort-Highlighting, Autovervollständigung, Rechtschreibkorrektur und die Möglichkeit, nach Kategorien und Tags zu filtern, machen die Suche auf Ihrer Seite schnell und intuitiv. Die Erstellung eines solchen Werkzeugs erfordert entsprechende Module, aber das Endergebnis ist die Mühe wert und bietet den Nutzern eine moderne und fortschrittliche Produktsuchmaschine. Wenn Sie Unterstützung bei dieser oder einer ähnlichen Aufgabe benötigen, helfen Ihnen die Experten unserer Drupal-Agentur gerne, diese Konfiguration vorzunehmen.

.