Suchplugin für Joomla 3: kognitive bedeutungsorientierte Suchmaschine trifft CMS

letzte Überarbeitung: 2021-11-05; Arbeitszeit: 5 bis 15 Minuten (je nach Installationsart und Erfahrung)

Eine Anleitung für Joomla 4 finden Sie hier.

Überblick

Wir erklären hier, wie man die kognitive bedeutungsorientierte Suche SEMPRIA-Search in 7 einfachen Schritten als Extension für das CMS Joomla nutzt. Mit zwei Einschränkungen (10 Seiten, 100 Tage) ist das sogar kostenlos möglich. Im Folgenden wird eine aktuelle Installation von Joomla 3 angenommen.

1. Plugin installieren

Laden Sie die folgende zip-Datei herunter: Version 1.1.0 als zip-Datei. Sie enthält die Joomla-Extension SempSearch vom Typ Plugin. Loggen Sie sich nun als Administrator in Ihr Joomla ein, am besten mit der Nutzersprache English, damit Sie die Hinweise unten besser zuordnen können.

Klicken Sie Extensions | Manage | Install | Upload Package File und wählen Sie Ihre zip-Datei aus. Falls die Installation erfolgreich war, erscheint eine grüne Meldung Installation of the plugin was successful.

2. Standardsuche deaktivieren

Klicken Sie Components | Search | Options (Button) und stellen Sie sicher, dass die ersten 4 Elemente rot sind. Abschließend drücken sie Save (Button).

Außerdem empfiehlt es sich, alle Search-Plugins auszuschalten unter Extensions | Plugins, nämlich Search-Categories, Search-Contacts, Search-Content, Search-News Feeds und Search-Tags.

3. SEMPRIA-Benutzerkonto anlegen

Um Ihre Suchmaschine zu verwalten, brauchen Sie ein SEMPRIA-Benutzerkonto. Falls Sie noch keines haben, registrieren Sie sich hier unter Angabe der zu durchsuchenden Website, die Ihre CMS-Installation bereitstellt.

4. SEMPRIA-Search aktivieren

Wählen Sie Extensions | Plugins | SempSearch. Falls das Plugin noch nicht aktiv ist, aktivieren Sie es mit einem Haken.

Füllen Sie die ersten 3 Felder (also: SEMPRIA-Search API-URL, SEMPRIA-Search API-PW, SEMPRIA-Search Corpus-ID) mit den Werten, die Sie Ihrem Benutzerkonto entnehmen. Falls die Werte dort noch nicht stehen, warten Sie bitte auf eine Informationsmail von info@sempria.de. Die Defaults für die restlichen Einstellungen sind nur in Spezialfällen zu ändern.

5. Suchseite anlegen

Falls es in Ihrem CMS noch gar keine Suchbox zum Durchsuchen Ihres CMS gibt, sollten Sie nun eine Suchmöglichkeit anlegen. Dazu gibt es zahlreiche Möglichkeiten. Wir beschreiben zuerst ein Suchfeld, dann eine getrennte Suchseite. Man kann eines von beiden oder auch beides umsetzen.

Um ein Suchfeld anzulegen, wähle man Extensions | Modules | New (Button), dann Search. Man editiere Title und Position passend und schließe mit Save (Button) ab.

Eine getrennte Suchseite kann man unter Menus | Main Menu | Add new menu item auswählen und dann Menu item type auf Search form or search results setzen.

6. Overrides anlegen

Nun ist es fast geschafft: man muss noch zwei sogenannte Overrides anlegen. Dazu wählt man unter Extensions | Templates | Templates das aktive Template aus (oft protostar), Copy template (Button) drücken und einen Namen vergeben, bspw. Protostar-sempsearch. Dann Create overrides unter Components | com_search | search. Weiter geht es im Dateibaum unter html | com_search | search | default_form.php, wo man der Bedingung 'this->total > 0' (Zeile 72) ein 'false && ' voranstellt.

Zum Einbinden von interaktiven Suchvorschlägen fügt man im class-Wert das input-Elements mit Namen searchword (Zeile 24) folgendes ein:
inputbox ajax-suggestion url-API-URL/hop/sempria/search-suggestions-html?client=Corpus-ID
Die Werte für API-URL und Corpus-ID finden Sie in Ihrem Benutzerkonto, s. oben in Schritt 4. Für einen fiktiven Kunden abcd mit API-URL https://api.sempria.de:9999/... könnte dies so aussehen:
inputbox ajax-suggestion url-https://api.sempria.de:9999/hop/sempria/search-suggestions-html?client=abcd
Vor der Zeile mit dem Wort clearfix, füge man noch ein div-Element für die Suchvorschläge ein:
<div id='search-result-suggestions'>Vorschläge (1. ggf. unten auswählen, 2. ggf. oben anpassen, 3. ENTER-Taste oder Absenden-Knopf)<div id='search-results'></div></div>
Zum Speichern den Save (Button) drücken.

Der zweite Override betrifft die Datei default_results.php im selben Verzeichnis. Dort ändert man '$result->text;' (Zeile 37) zu '(isset($result->sem_res) ? $result->sem_res : $result->text);' und speichert mit Save (Button).

Unter Extensions | Templates | Styles den Default-Stern setzen bei Protostar-sempsearch.

7. CSS für Suchergebnisse hinterlegen

Weiter unter Extensions | Templates | Templates das aktuelle Template wählen, dann mittels Editor | index.php vor '</head>' (Zeile 139) einfügen:
<link rel="stylesheet" href="/plugins/search/sempsearch/sempsearch.css" type="text/css" />
<link rel="stylesheet" href="/plugins/search/sempsearch/sempria-suggest.css" type="text/css" />
<script src="/plugins/search/sempsearch/sempria-suggest.js" type="application/x-javascript"></script>

Schlussbemerkungen

Bei Fragen zu dieser Anleitung oder Interesse an entsprechenden Anleitungen für andere Content-Management-Systeme o.ä. kontaktieren Sie uns einfach hier. Für Feedback und Verbesserungen zu diesem Text sind wir immer dankbar.