So konfigurieren Sie die Facettensuche für Drupal 8 (und 9) – Eine einfache Schritt-für-Schritt-Anleitung
Veröffentlicht: 2020-11-18Die Facettensuche bietet Benutzern ein überlegenes Sucherlebnis, indem Filter für ihre Suchergebnisse angezeigt werden. Es ist besonders nützlich für Websites mit großen Katalogen und Listen. Sobald der Benutzer seine Suchanfrage eingegeben hat, wird ihm eine Liste relevanter Filteroptionen angezeigt, um seine Suche weiter einzugrenzen. Diese Filterelemente sind Facetten.
Zuvor Facet API in Drupal 7, ermöglicht das Facet-Modul in Drupal 8 Ihrer Website facettenreiche Suchfunktionen. Facets unterstützt auch Drupal 9! Sehen wir uns die Konfiguration und Implementierung der Facettierten Suche mit Drupals eigenem Suchserver, der Search API, an.

Was ist Facettensuche?
Wenn Ihre Benutzer selbst nach der Eingabe ihrer Suchanfrage nur schwer erkennen können, wonach sie suchen, werden sie mit Sicherheit frustriert. Die Facettensuche bietet Benutzern gleichzeitig mehrere Filter für die verschiedenen Attribute des Inhalts. Die bereitgestellten Facetten basieren auf der Suchanfrage, die der Benutzer ausgeführt hat. Neben Facetten wird auch die Anzahl der übereinstimmenden Ergebnisse (normalerweise in Klammern) angezeigt. Schauen wir uns diesen Screenshot unten an, um Facetten besser zu verstehen.

In einem unserer jüngsten Drupal 8-Projekte präsentiert Ihnen eine Schnellsuche nach Homes in Columbia auf dieser Website Facetten wie Communities, Hot Deals, Quick Move-ins und mehr. Sie sehen auch die Anzahl der Ergebnisse neben jeder Facette. Es wird also eine Abfrage mit dem Stichwort „Columbia“ an den Suchserver gesendet, um die bereits konfigurierten und indizierten Kategorien (Communities, Hot Deals, etc.)
Installieren des Facettenmoduls für Drupal 8
Wie bereits erwähnt, implementieren wir die Facettensuche mithilfe des Search-API-Moduls von Drupal.
Schritt 1: Module aktivieren
Installieren und aktivieren Sie diese Module
• Das Facettenmodul
• API-Modul suchen
Schritt 2: Inhaltstypen erstellen
Erstellen Sie den Inhalt, den Sie in die Facettensuche einschließen möchten, indem Sie wie unten gezeigt Inhaltstypen hinzufügen. Sie können auch die von Drupal bereitgestellten Standardinhaltstypen verwenden.

Schritt 3: Konfigurieren des Suchservers
Navigieren Sie in der Admin-Oberfläche zu Konfiguration -> Suche und Metadaten -> Such-API , um Ihren Suchserver zu konfigurieren. Geben Sie Ihrem Suchserver einen Namen (hier - Datenserver).

Schritt 4: Konfigurieren des Suchindex
Konfigurieren Sie als Nächstes den Suchindex, um die Suchleistung zu verbessern. Navigieren Sie zu Konfiguration -> Suche und Metadaten -> Such-API -> Index -> data_index .

Schritt 4: Konfigurieren des Suchindex
Geben Sie Ihrem Index einen Namen und wählen Sie dann Content als Ihre Datenquellen aus, da wir die Content-Entitäten hier indizieren.
Sie können dann zum nächsten Abschnitt – Konfigurieren der Datenquelle (hier – Inhalt) übergehen. Hier können Sie alle Bundles auswählen oder nur einige aus der folgenden Liste auswählen, um sie zu indizieren.
Wählen Sie als nächstes Ihren Server aus, den Sie bereits erstellt haben (hier - Datenserver). Wählen Sie die Option „ Elemente sofort indizieren “, um den Indexierungsprozess zu starten. Klicken Sie auf Speichern.

Konfigurieren der Datenquelle
Schritt 5: Felder für die Indizierung hinzufügen
Als nächstes müssen wir Felder hinzufügen, die indiziert werden sollen. Navigieren Sie zu Konfiguration -> Suche und Metadaten -> Such-API -> Datenindex und wählen Sie die Registerkarte Felder aus . Klicken Sie auf die Schaltfläche Felder hinzufügen, um Felder nach Ihren Anforderungen zu erstellen.

Schritt 5: Felder für die Indizierung hinzufügen
Schritt 6: Indizieren des Inhalts
Klicken Sie an derselben Stelle auf die Registerkarte Ansicht, um den Prozess der Indexierung Ihres Inhalts zu starten. Klicken Sie im Abschnitt Indizierung jetzt starten auf die Schaltfläche Jetzt indizieren . Es zeigt Ihnen dann einen Fortschrittsbalken mit dem Status der Anzahl der indizierten Elemente an.


Schritt 6: Inhalt indizieren
Schritt 7: Erstellen einer Ansicht
Jetzt erstellen wir eine Ansicht für die Daten, die indiziert und Ihren Benutzern angezeigt werden müssen. Navigieren Sie zu Struktur -> Ansichten -> Ansicht hinzufügen .

Schritt 7: Erstellen einer Ansicht
Geben Sie der Ansicht einen Namen.
Wählen Sie in der Dropdown-Liste Ansichtseinstellungen den Index aus, den Sie in Schritt 4 erstellt haben.
Erstellen Sie eine Seite für Ihre Suchergebnisse, indem Sie auf das Kontrollkästchen Seite erstellen auf der Registerkarte Seiteneinstellungen klicken. Geben Sie einen Namen und einen Pfad dafür ein.
Wählen Sie unter Anzuzeigende Elemente die Option 0 aus, wenn Sie alle Ergebnisse auf einer Seite anzeigen möchten. Wählen Sie andernfalls eine Reihe von Ergebnissen aus, die angezeigt werden sollen.
Unter Einstellungen für die Seitenanzeige können Sie das Format auswählen, in dem Sie Ihre Ergebnisse anzeigen möchten – Tabelle, Raster, HTML-Liste oder Unformatierte Liste. Wir haben hier Unformatierte Liste ausgewählt. Klicken Sie auf Speichern.
Schritt 8: Felder zur Ansicht hinzufügen
Hier fügen wir der Ansicht Felder hinzu, die wir zuvor indiziert haben.
Gehen Sie zu Ansichten, klicken Sie auf die Schaltfläche Hinzufügen neben dem Abschnitt Felder. Wählen Sie die Felder aus, klicken Sie auf Hinzufügen und konfigurieren.
Aktivieren Sie unter Rendereinstellungen das Kontrollkästchen Link zum Inhalt, damit die angezeigten Ergebnisse anklickbar sind.
Klicken Sie auf Speichern.

Schritt 8: Felder zur Ansicht hinzufügen
Schritt 9: Konfigurieren der Facetten
Beginnen wir nun mit der Konfiguration und Aktivierung der Facetten. Navigieren Sie zu Konfiguration -> Suche und Metadaten -> Facetten
Klicken Sie auf die Schaltfläche Facette hinzufügen.

Schritt 9: Konfigurieren der Facetten
Wählen Sie die Facettenquelle – Dies ist Ihre zuvor erstellte Ansicht.
Wählen Sie das Feld aus – Dies zeigt die Felder an, die Sie in Schritt 5 für die Indizierung hinzugefügt haben.
Geben Sie der Facette einen Namen.
Klicken Sie auf Speichern.
Als nächstes sehen Sie dann weitere Konfigurationsoptionen für die Anzeige der Facetten (wie in der folgenden Abbildung gezeigt). Widgets listen eine Reihe von Optionen wie Linkliste, Array, Dropdown usw. auf. Sie können auswählen, was am besten zu Ihrer Website passt.
Wählen Sie „Entitäts-ID in Label umwandeln“, um zu vermeiden, dass der Computername des Inhaltstyps angezeigt wird.
Klicken Sie auf Speichern.

Schritt 10: Platzieren der Facettenblöcke in den ausgewählten Seitenbereichen
Platzieren Sie als Nächstes die Facetten, die Sie als Blöcke erstellt haben, in einem Seitenbereich Ihrer Wahl.
Navigieren Sie zu Struktur -> Blocklayout .
Wählen Sie den Bereich der Seite aus, in dem Sie den Block mit den Facetten platzieren möchten.
Hier wählen wir Sidebar aus . Klicken Sie neben der Seitenleiste auf die Schaltfläche Block platzieren.
Suchen Sie im nächsten Dialogfeld nach dem Facettennamen und klicken Sie auf Block platzieren.

Schritt 10: Platzieren der Facettenblöcke in den ausgewählten Seitenbereichen
Erwähnen Sie im Abschnitt Block konfigurieren den Pfad der Suchseite, den Sie zuvor erstellt haben. Hier -" Site-Search " ist unsere Seite, die wir erstellt haben.
Vergeben Sie einen Anzeigenamen für Ihren Block und aktivieren Sie das Kontrollkästchen Titel anzeigen, wenn der Blockname angezeigt werden soll (hier – Typ).
Klicken Sie auf Block speichern .
Das Ergebnis
Und schon ist Ihre facettierte Suchseite und Funktionalität fertig! Beachten Sie die Facette Typ (Anzeigename), die als Inhaltstypen zum Filtern aufgeführt ist.

Ergebnis: Die Facettensuchseite
