FYI. This blog is translated by machine. Please ignore any spelling and grammar errors; sorry for such inconvenience. We appreciate your understanding and support.
Willkommen zur Suchserie 3! Sind Sie auf der Suche nach einer Apache TYPO3 Solr Erweiterung? Dieser Blog hilft Ihnen vom Anfänger- bis zum Fortgeschrittenen-Level bei der Suche nach einer Apache TYPO3 Solr-Lösung.
Apache Solr TYPO3 ist der letzte Blog in der TYPO3-Suchreihe, die mit meiner bevorzugten Suchlösung TYPO3 Solr Extension Search endet. Verglichen mit EXT:solr, anderen TYPO3-Sucherweiterungen wie EXT:indexed_search & EXT:ke_search, sind sie wie eine Blackbox. TYPO3 Solr ist die einzige Suchlösung, die auf intelligente Weise Ergebnisse mit perfekter Indizierung und Priorität für Ihre Website-Besucher liefert.
TYPO3-Suchreihen
Laut unserem letzten #T3POLL zum Thema "Beste TYPO3 Suchlösung für KMU" stimmten die meisten Leute für die Apache TYPO3 Solr-Erweiterung.
Was ist Apache Solr?
Apache Solr (Searching On Lucene) ist eine kostenlose Open-Source-Suchmaschine, die auf der Apache-Lucene-Bibliothek basiert.
Solr ist ein eigenständiger Enterprise-Suchserver mit einer REST-ähnlichen API.
Sie können Dokumente (als "Indizierung" bezeichnet) über JSON, XML, CSV oder binär über HTTP eingeben. Sie fragen ihn über HTTP GET ab und erhalten JSON-, XML-, CSV- oder binäre Ergebnisse.
Solr vs. ElastischeSuche
Apache Solr | ElastischeSuche | |
Natur | Offene Quelle | Nicht vollständig Open Source |
Format | XML, CSV, JSON | Only JSON |
Scherben spalten | Möglicherweise | Unmöglich |
Documentation | Gut dokumentiert | Schlecht dokumentiert |
Eigenschaften von Apache TYPO3 Solr
- Erweiterte Volltext-Suchfunktionen
- Optimiert für hohes Verkehrsaufkommen
- Standardbasierte offene Schnittstellen - XML, JSON und HTTP
- Umfassende Verwaltungsschnittstellen
- Einfache Überwachung
- Hochgradig skalierbar und fehlertolerant
- Flexibel und anpassungsfähig mit einfacher Konfiguration
- Nahe-Echtzeit-Indizierung
- Erweiterbare Plugin-Architektur
Architektur von Apache Solr
Einführung in die TYPO3 Solr-Erweiterung (EXT:solr)
In diesem Artikel werde ich eine der beliebtesten TYPO3-Erweiterungen namens EXT:solr erklären.
- Sucherweiterung für TYPO3
- Basierend auf Apache Solr
- Indizierung von Seiten und benutzerdefinierten Datensätzen
- Leistungsstarkes Frontend (Facettierung, Auto-Suggest, Autokorrektur usw.)
- Stichwörter & Synonyme
- OpenSource-Projekt https://github.com/TYPO3-Solr/
- Offizielle Website: http://www.typo3-solr.com/en/home/
- Finanziert und mit EB- und EAP-Partnern
Was ist die Architektur der Apache Solr TYPO3 Extension und wie funktioniert sie?
Welche Möglichkeiten gibt es, Apache Solr TYPO3 zu verwenden?
Das Gute an Apache Solr TYPO3 ist, dass Sie es auf verschiedene Arten installieren, konfigurieren und nutzen können, je nach Ihrem Budget und Ihren Bedürfnissen wie folgt.
Option #1 Selbst gehosteter Apache Solr TYPO3
Sowohl Apache Solr als auch TYPO3 sind OpenSource-Produkte, d.h. Sie können es entweder selbst gehostet oder Cloud-basiert einstellen.
Option #2 Von Webhostern beziehen
Wenn Sie kein Techniker sind, dann können Sie take setup it durch den Webhoster Jweiland nutzen. Jweiland, eines der ältesten TYPO3-Hostingunternehmen, bietet solches TYPO3 Solr Web Hosting an.
Option #3 Spezialisierter Apache Solr-Dienstanbieter
Wenn Sie Fachwissen zu Apache Solr suchen, dann wenden Sie sich an das Team DKD, das die TYPO3-Erweiterung Apache Solr entwickelt hat und pflegt.
Leitfaden zur Apache Solr TYPO3-Erweiterung
Einführung in die TYPO3 Solr-Erweiterung (aka EXT:solr)
Apache Solr für TYPO3 ist der Enterprise Search Server, nach dem Sie gesucht haben, mit einzigartigen Funktionen wie Faceted Search oder Synonym-Support und unglaublich schnellen Antwortzeiten der Ergebnisse innerhalb von Millisekunden.
solr
Erweiterungsschlüssel
500000+
Herunterladen
Merkmale der Solr TYPO3-Erweiterung
- Autosuggest
- Verstärkung der Ergebnisse
- Berücksichtigung von Benutzerzugriffsrechten
- Erhöhung des Inhalts
- Indizierung von Inhalten
- Facettierte Suche
- Analyse der Sprache
- Mehrsprachige Handhabung
- Leistung
- Suchwort-Hervorhebung
- Sortierung der Ergebnisse
- Rechtschreibprüfung
- Stoppwort-Unterstützung
- Unterstützung von Synonymen
Wie verwendet und installiert man Apache Solr TYPO3?
Sie können Apache solr mit oder ohne Docker installieren und konfigurieren.
Option #1 Installieren-Solr.sh
Mit der Erweiterung wird ein Skript ausgeliefert und installiert, das für einen Entwicklungskontext verwendet werden kann.
chmod u+x ./Resources/Private/Install/install-solr.sh
./Resources/Private/Install/install-solr.sh -d /home/developer
Option #2 Docker verwenden
Sie können die Apache TYPO3 Solr-Erweiterung ganz einfach über dieses Docker-Bild installieren https://hub.docker.com/r/typo3solr/ext-solr/.
// Pull TYPO3 Apache Solr Docker Image
docker pull typo3solr/ext-solr:<EXT:Solr_Version>
// Start container with anonymous volume
docker run --name=typo3s-solr-server -d -p 8983:8983 typo3solr/ext-solr
docker inspect -f '{{ .Mounts }}' typo3s-solr-server
// Start container with volume on hosts path
mkdir .solrdata
docker volume create --name typo3s-solr-server-data --opt type=none --opt device=$PWD/.solrdata --opt o=bind
docker run --name=typo3s-solr-server --mount source=typo3s-solr-server-data,target=/var/solr -d -p 8983:8983 typo3solr/ext-solr
Testtauchgang zur Überprüfung von Solr Up & Runs
Versuchen Sie, auf Ihren Apache Solr unter http://:8983/solr/#/core_de/query zuzugreifen.
Bereitstellung der EXT:solr-Konfiguration in Apache Solr
Alles, was Sie tun müssen, ist, das configSet-Verzeichnis in Ihre vorbereitete solr-Installation zu kopieren und die Datei solr.xml zu ersetzen. Im Installationsprogramm machen wir das so:
// Copy default solr file
cp -r ${EXTENSION_ROOTPATH}/Resources/Private/Solr/configsets ${SOLR_INSTALL_DIR}/server/solr
cp ${EXTENSION_ROOTPATH}/Resources/Private/Solr/solr.xml ${SOLR_INSTALL_DIR}/server/solr/solr.xml
// Copy the default cores:
cp -r ${EXTENSION_ROOTPATH}/Resources/Private/Solr/cores ${SOLR_INSTALL_DIR}/server/solr
// Create a core with the rest API:
curl "http://localhost:8983/solr/admin/cores?action=CREATE&name=core_de&configSet=ext_solr_8_0_0&schema=german/schema.xml&dataDir=../../data/german"
Wie installiert man die TYPO3 Solr-Erweiterung?
Option #1 Von TER installieren
Gehen Sie zum Extension Manager, wählen Sie Get Extensions und suchen Sie nach "solr".
Option #2 Installation von TYPO3 Solr Github
git-Klon git@github.com:TYPO3-Solr/ext-solr.git solr
Option #3 Mit Composer installieren
Komponist benötigen apache-solr-for-typo3/solr
Wie konfiguriere ich die TYPO3 Solr-Erweiterung?
Lassen Sie uns die TYPO3-Extension solr schnell konfigurieren.
Schritt 1. Statisches TypoScript einbinden
- Web > Vorlagen > Stamm > TypoScript-Bearbeitung > Statisches TypoScript einschließen
- Suche - Basiskonfiguration (solr)
- Suche - Standard-Stylesheet (solr)
// TypoScript Setup
page.10 {
stdWrap.dataWrap = <!--TYPO3SEARCH_begin-->|<!--TYPO3SEARCH_end-->
}
// Or you can configure at your Fluid Template too
Schritt 3. Vor-Ort-Handling konfigurieren
- Website-Verwaltung > Sites > Ihre Site bearbeiten
- Zur Registerkarte Solr wechseln
- Konfigurieren Sie alle für die TYPO3 Solr-Erweiterung verfügbaren Optionen
# sites/yoursite/config.yaml
base: 'http://yoursite.com/'
baseVariants: { }
errorHandling: { }
languages:
-
title: English
enabled: true
base: /
typo3Language: default
locale: en_US.UTF-8
iso-639-1: en
navigationTitle: ''
hreflang: en-US
direction: ''
flag: global
solr_host_read: solr_node_1
solr_core_read: core_en
languageId: '0'
-
title: German
enabled: true
base: /de/
typo3Language: de
locale: de_DE.UTF-8
iso-639-1: de
navigationTitle: ''
hreflang: de-DE
direction: ''
flag: global
solr_host_read: solr_node_2
solr_core_read: core_de
languageId: '1'
rootPageId: 3
routes: { }
solr_enabled_read: true
solr_path_read: /solr/
solr_port_read: 8983
solr_scheme_read: http
solr_use_write_connection: false
Wie indiziert man TYPO3 Solr?
Erstmals Index TYPO3 Solr-Erweiterung
- Gehen Sie zu Verwaltungswerkzeuge > Suche.
- Klicken Sie auf Index-Warteschlange > Klicken Sie auf "Ausgewählte Inhalte zur Indexierung in eine Warteschlange stellen".
Automatisieren der TYPO3 Solr-Indizierung
- Gehen Sie zu System > Zeitplaner
- Neue Aufgabe hinzufügen
- Wählen Sie "Index Queue Worker" aus der Klasse
- Konfigurieren Sie andere Optionen des Schedulers
Wie fügt man das TYPO3 Solr Frontend-Plugin ein?
Schritt 1. Gehen Sie zu Web > Seite > Wählen Sie Ihre Suchseite
Schritt 2. Neues Inhaltselement einfügen > Plugins > Suche
Wie passt man die TYPO3 solr Fluid-Vorlage an?
Konfigurieren Sie Ihre eigene TYPO3 Fluid-Vorlage für die TYPO3 solr Extension.
# TypoScript Setup
plugin.tx_solr {
view {
layoutRootPaths.10 = EXT:yourpath/Layouts/
partialRootPaths.10 = EXT:yourpath/Partials/
templateRootPaths.10 = EXT:yourpath/Templates/
}
}
TYPO3 solr Backend Report
Die Extension bietet ein solch luxuriöses Feature im TYPO3 Backend; Sie können die verfügbaren Module des TYPO3 solr Search Backends wie folgt erkunden.
Modul 1. Anschlüsse Verbindungen
# TypoScript Setup
plugin.tx_solr.search {
suggest = 1
suggest {
numberOfSuggestions = 10
suggestField = spell
showTopResults = 1
numberOfTopResults = 5
}
}
2. Häufiger Fehler "Suche ist derzeit nicht verfügbar"
- Sollte Ihre solr-Verbindung konfiguriert werden
- Sollte leer <!- TYPO3SEARCH_begin ->" und "<!- TYPO3SEARCH_end -> in Ihrer Vorlage
3. Erweiterte Gesichter Inhaltstyp
# TypoScript Setup
plugin.tx_solr.search.faceting.facets.[faceName].type = [typeName]
plugin.tx_solr.search {
faceting = 1
faceting {
facets {
contentType {
label = Content Type
field = type
}
}
}
}
# TypoScript Setup
plugin.tx_solr.index.queue {
news = 1
news {
table = tx_news_domain_model_news
fields {
abstract = teaser
author = author
authorEmail_stringS = author_email
title = title
content = SOLR_CONTENT
content {
cObject = COA
cObject {
10 = TEXT
10 {
field = bodytext
noTrimWrap = || |
}
}
}
category_stringM = SOLR_RELATION
category_stringM {
localField = categories
multiValue = 1
}
keywords = SOLR_MULTIVALUE
keywords {
field = keywords
}
tags_stringM = SOLR_RELATION
tags_stringM {
localField = tags
multiValue = 1
}
url = TEXT
url {
typolink.parameter = {$plugin.tx_news.settings.detailPid}
typolink.additionalParams = &tx_news_pi1[controller]=News&
tx_news_pi1[action]=detail&tx_news_pi1[news]={field:uid}
typolink.additionalParams.insertData = 1
typolink.useCacheHash = 1
typolink.returnLast = url
}
}
attachments {
fields = related_files
}
}
}
plugin.tx_solr.logging.indexing.queue.news = 1
# TypoScript Setup
plugin.tx_solr {
search {
results {
resultsPerPage = 6
resultsPerPageSwitchOptions = 12, 18, 24
}
}
}
# TypoScript Setup
plugin.tx_solr.search.sorting >
plugin.tx_solr.search {
sorting = 1
sorting {
defaultOrder = asc
options {
relevance {
field = relevance
label = Relevance
}
title {
field = sortTitle
label = Title
}
}
}
}
# TypoScript Setup
plugin.tx_solr.enabled = 0
[globalVar = GP:L = 0]
plugin.tx_solr {
enabled = 1
solr.path = /solr/core_de/
}
[globalVar = GP:L = 8|9]
plugin.tx_solr {
enabled = 1
solr.path = /solr/core_en/
}
8. Wie kann ich die AJAX-Suche in TYPO3 solr aktivieren?
Web > Vorlagen > Root > Statisch einschließen > "Suche - Ajaxifizierung der Suchergebnisse mit jQuery (solr)" hinzufügen
Hilfreiche TYPO3 solr-Erweiterungen
Die TYPO3-Gemeinschaft hat einige gute Erweiterungen für TYPO3 solr entwickelt, wie folgt.
1. TYPO3 solr Finden
Diese TYPO3-Erweiterung soll die Abfrage und Anzeige beliebiger solr-Indizes ermöglichen. Sie bietet die Möglichkeit, viele Aspekte der Abfrage - z.B. Abfragefelder, Facetten, Filterung durch TypoScript - zu konfigurieren und die Anzeige durch Fluid-Templates einzurichten. Teile für Standardanzeigefunktionen sowie mehrere Ansichtshilfen, die bei der Erstellung dieser Vorlagen helfen, sind in der Erweiterung enthalten.
2. Indizierung der solr-Datei
Diese Erweiterung gibt Ihnen die Möglichkeit, einzelne Dokumente mit solr zu indizieren. Apache Tika, der in der Lage ist, Metadaten aus ca. 1200 verschiedenen Dateitypen zu erkennen und zu extrahieren, werden für die Inhaltsanalyse von Dokumenten verwendet. Die Konfiguration für Tika kann direkt innerhalb der Erweiterung implementiert werden, die solr-Server-Funktionalität wird dann zum Parsen verwendet. Einzelne Dokumente können dem Suchindex für die Standardsprache oder eine beliebige Lokalisierung hinzugefügt werden; ebenso können Site-Roots ausgewählt werden, für die das Dokument zu stark indiziert ist.
ddev start
http://solr-ddev-site.ddev.site/
http://solr-ddev-site.ddev.site/typo3/
Übrigens können Sie Apache solr für DDEV auch über deren offizielle Richtlinie https://ddev.readthedocs.io/en/stable/users/extend/additional-services/
4. solr TYPO3-Plugin
Das solr-TYPO3-Plugin stellt das AccessFilterQParserPlugin zur Verfügung, ein org.apache.solr.search.QParserPlugin, das es ermöglicht, den Zugriff auf die von TYPO3 indizierten solr-Dokumente auf Dokumentebene einzuschränken.
5. EXT:solr_datei_indexer
Diese Erweiterung gibt Ihnen die Möglichkeit, einzelne Dokumente mit solr.
Apache Tika, das in der Lage ist, Metadaten aus ca. 1200 verschiedenen Dateitypen zu erkennen und zu extrahieren, wird für die Inhaltsanalyse von Dokumenten verwendet. Die Konfiguration für Tika kann direkt innerhalb der Erweiterung implementiert werden, die solr-Server-Funktionalität wird dann zum Parsen verwendet.
6. Apache Tika für TYPO3
Bietet Tika-Dienste für TYPO3 an, um die Sprache eines Dokuments zu erkennen, Metadaten zu extrahieren und Inhalte aus Dateien zu extrahieren. Kann entweder eine eigenständige ausführbare Tika-Datei oder Tika integriert in einen solr-Server mit einem aktivierten Extrahierungs-Request-Handler verwenden.
7. JW-Werkzeuge
Jwtools2 enthält einen Scheduler-Task für solr zum Indizieren mehrerer Seitenbäume und einen Job zum Ausführen von SQL-Abfragen. Darüber hinaus gibt es Einstellungen, um einige Funktionen in TYPO3 zu aktivieren, wie z.B. die Anzeige der Seiten-UID im Seitenbaum mit einem einfachen Klick im Extension-Manager.
Helfen, beitragen und Sponsor der TYPO3 solr Extension werden
Team DKD arbeitet hart an der Entwicklung und Wartung von TYPO3 EXT:solr, Sie können auf folgende Weise helfen und beitragen.
- Beitrag zu Github: Sie können Fehler/Probleme in TYPO3 solr Github https://github.com/TYPO3-solr/ext-solr beheben, Prüfen Sie Beitrag.
- Schwarzer Kanal: Helfen Sie den Leuten beim TYPO3-Slack-Kanal https://typo3.slack.com/messages/ext-solr/
- EB-Partner werden: Wenn Sie nicht technisch versiert sind, dann können Sie trotzdem helfen, indem Sie Sponsor von TYPO3
Schlussfolgerung
Danke für das Lesen eines etwas langen Blogs.
Ich hoffe, dass Sie wenig Wissen über die How-To Apache TYPO3 solr Sucherweiterung erhalten. Lassen Sie uns schnell wie folgt schließen.
- Das Konzept, die Architektur und die Installation von Apache solr verstehen.
- Praxis zur Installation und Konfiguration der großartigen TYPO3 Apache solr-Erweiterung EXT:solr.
- Betrachten Sie alle verfügbaren TYPO3 solr-Backend-Module.
- Testen Sie das Frontend-Plugin mit Formularen, Suchergebnissen, Filtern usw. und passen Sie es an. Ausführliche Informationen finden Sie in der offiziellen Dokumentation von EXT:solr, die fantastisch ist.
- Versuchen Sie andere verfügbare TYPO3 solr-Erweiterungen von TER und TYPO3 solr Github.
- Versuchen Sie andere verfügbare TYPO3 solr-Erweiterungen von TER und TYPO3 solr Github.
- Um der Gemeinschaft etwas zurückzugeben, Hilfe durch einen Beitrag von Sponsoring für das EXT:solr-Projekt an großartige DKD-Leute.
Haben Sie Probleme bei der Installation, Konfiguration oder Verwendung von EXT:solr? Ich helfe Ihnen gerne weiter, bitte schreiben Sie unsere Fragen in das Kommentarfeld.
Haben Sie eine glückliche TYPO3 solr-Suche!
Post a Comment
- Thanks for the deep insghts Sanjay. Solr is simple enough to implement in TYPO3 without too much fuss.
Sanjay Chauhan
CTO - T3Planet & NITSANSanjay Chauhan, Mitbegründer von NITSAN (Preisgekrönte TYPO3 Agentur) und Pionier von T3Planet, dem ersten TYPO3-Store weltweit.
Ein wahrer TYPO3-Fanatiker seit 2010.
Mit meinem umfangreichen technischen Wissen und…
More From Author