Nachtrag Kapitel 9
This commit is contained in:
parent
1eebc333b7
commit
c2739ce9b9
|
@ -0,0 +1,19 @@
|
||||||
|
# 9 Installation der Katalogoberfläche TYPO3-find
|
||||||
|
|
||||||
|
Ziel: In diesem Kapitel fügt sich das Puzzle zusammen. Wir haben mit OpenRefine die Daten transformiert und als TSV-Dateien gespeichert. Mit dem Suchindex Solr haben wir die TSV-Dateien indexiert. Nun installieren wir die Katalogoberfläche TYPO3-find, um die Daten aus dem Suchindex auf einer Webseite für die NutzerInnen zur Verfügung zu stellen.
|
||||||
|
|
||||||
|
Begriffe:
|
||||||
|
|
||||||
|
* TYPO3 ist ein häufig genutztes Content Management System (CMS) für Webseiten
|
||||||
|
* TYPO3-find ist eine von der SUB Göttingen entwickelte Erweiterung für TYPO3
|
||||||
|
|
||||||
|
Inhalte:
|
||||||
|
|
||||||
|
1. [Installation von TYPO3 mit Docker](09_1_installation-von-typo3-mit-docker.md)
|
||||||
|
2. [Erstkonfiguration von TYPO3](09_2_erstkonfiguration-von-typo3.md)
|
||||||
|
3. [Erweiterung TYPO3-find installieren](09_3_erweiterung-typo3-find-installieren.md)
|
||||||
|
4. [TYPO3-find anpassen](09_4_typo3-find-anpassen.md)
|
||||||
|
|
||||||
|
Beiträge der Studierenden in den Lerntagebüchern:
|
||||||
|
|
||||||
|
* ...
|
|
@ -0,0 +1,47 @@
|
||||||
|
# 9.1 Installation von TYPO3 mit Docker
|
||||||
|
|
||||||
|
Wir installieren TYPO3 mit den von Martin Helmich vorbereiteten Docker-Containern:
|
||||||
|
|
||||||
|
* Webseite mit Erläuterungen: https://www.martin-helmich.de/de/blog/typo3-cms-docker.html
|
||||||
|
* Container im Docker Hub: https://hub.docker.com/r/martinhelmich/typo3/
|
||||||
|
|
||||||
|
## Aufgabe 1: TYPO3 installieren
|
||||||
|
|
||||||
|
Hinweise:
|
||||||
|
|
||||||
|
* Der Docker-Container mit Solr aus Kapitel 8 muss laufen. Falls zwischenzeitlich beendet, mit folgendem Befehl starten: ```sudo docker start my_solr```
|
||||||
|
* Folgen Sie der oben verlinkten Anleitung von Martin Helmich. Abweichend davon müssen Sie jedoch einen Link zum Container mit dem Solr-Index einrichten, da wir später von TYPO3 aus darauf zugreifen müssen. Ergänzen Sie im Startbefehl für den Container typo3-web den Parameter ```--link my_solr```
|
||||||
|
|
||||||
|
## Lösung
|
||||||
|
|
||||||
|
### Schritt 1: Solr starten (bei Bedarf)
|
||||||
|
|
||||||
|
{%s%}sudo docker start my_solr{%ends%}
|
||||||
|
|
||||||
|
### Schritt 2: Container typo3-db für Datenbank starten (hier mit mariadb):
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo docker run -d --name typo3-db \
|
||||||
|
-e MYSQL_ROOT_PASSWORD=yoursupersecretpassword \
|
||||||
|
-e MYSQL_USER=typo3 \
|
||||||
|
-e MYSQL_PASSWORD=yourothersupersecretpassword \
|
||||||
|
-e MYSQL_DATABASE=typo3 \
|
||||||
|
mariadb:latest \
|
||||||
|
--character-set-server=utf8 \
|
||||||
|
--collation-server=utf8_unicode_ci
|
||||||
|
```
|
||||||
|
|
||||||
|
### Schritt 3: Container typo3-web für die Weboberfläche von TYPO3 starten
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo docker run -d --name typo3-web \
|
||||||
|
--link typo3-db:db \
|
||||||
|
--link my_solr \
|
||||||
|
-p 80:80 \
|
||||||
|
martinhelmich/typo3:7
|
||||||
|
```
|
||||||
|
|
||||||
|
### Befehle zum Stopp und Start von TYPO3
|
||||||
|
|
||||||
|
* TYPO3 stoppen: ```sudo docker stop typo3-web && sudo docker stop typo3-db```
|
||||||
|
* TYPO3 starten: ```sudo docker start typo3-db && sudo docker start typo3-web```
|
|
@ -0,0 +1,10 @@
|
||||||
|
# 9.2 Erstkonfiguration von TYPO3
|
||||||
|
|
||||||
|
Nach dem Start der Docker-Container erreichen Sie TYPO3 unter der Adresse http://localhost (localhost wie üblich durch IP-Adresse ersetzen). Dort treffen Sie zunächst auf den Installationsassistenten.
|
||||||
|
|
||||||
|
## Aufgabe 1: Installationsassistent durchführen und Startpaket installieren
|
||||||
|
|
||||||
|
Hinweise:
|
||||||
|
|
||||||
|
* In Schritt 2 muss im Feld ```host``` der Name des Docker-Containers mit der Datenbank angegeben werden, also ```typo3-db```. Die Passwörter entsprechen den Passwörtern aus dem Startbefehl für die Datenbank. Falls Sie nichts verändert haben wäre der MYSQL-Nutzername ```typo3``` und das Passwort ```yourothersupersecretpassword```
|
||||||
|
* Wählen Sie in Schritt 5 die Option ```Yes, download the list of distributions.``` und installieren Sie nach dem Login das Paket ```The official Introduction Package```
|
|
@ -0,0 +1,100 @@
|
||||||
|
# 9.3 Erweiterung TYPO3-find installieren
|
||||||
|
|
||||||
|
Normalerweise können Erweiterungen für TYPO3 ganz einfach über die Administrationsoberfläche installiert werden, so bei einem App Store. Die EntwicklerInnen legen ihre Erweiterungen dazu im offiziellen TYPO3 Extension Repository ab. Leider ist zum Zeitpunkt der Erstellung des Skripts (Januar 2017) von der Erweiterung TYPO3-find nur eine uralte Version im Extension Repository verfügbar. Dort liegt Version 1.0.1 (Nov 2013), während bei GitHub Version 3.1.0 (Jan 2017) zur Verfügung steht.
|
||||||
|
|
||||||
|
## Vorgehen zur manuellen Installation von TYPO3-find aus GitHub
|
||||||
|
|
||||||
|
Wir installieren den Code aus dem GitHub-Repository https://github.com/subugoe/typo3-find
|
||||||
|
|
||||||
|
### Schritt 1: Code aus GitHub Repository herunterladen
|
||||||
|
|
||||||
|
```
|
||||||
|
git clone https://github.com/subugoe/typo3-find.git
|
||||||
|
cd typo3-find
|
||||||
|
```
|
||||||
|
|
||||||
|
### Schritt 2: PHP5 installieren
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install php5
|
||||||
|
```
|
||||||
|
|
||||||
|
### Schritt 3: Abhängigkeiten der TYPO3-Erweiterung mit Composer nachladen
|
||||||
|
|
||||||
|
```
|
||||||
|
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
|
||||||
|
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
|
||||||
|
php composer-setup.php
|
||||||
|
php -r "unlink('composer-setup.php');"
|
||||||
|
php composer.phar install
|
||||||
|
```
|
||||||
|
|
||||||
|
### Schritt 4: Daten in TYPO3-Container kopieren
|
||||||
|
|
||||||
|
```
|
||||||
|
docker exec typo3-web mkdir /var/www/html/typo3/ext
|
||||||
|
docker cp . typo3-web:/var/www/html/typo3/ext/find
|
||||||
|
docker exec typo3-web chown www-data:www-data /var/www/html/typo3/ext/find
|
||||||
|
```
|
||||||
|
|
||||||
|
### Schritt 5: Aufräumen
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get remove apache2 php5
|
||||||
|
sudo apt-get autoremove
|
||||||
|
```
|
||||||
|
|
||||||
|
## Extension in Administrationsoberfläche aktivieren
|
||||||
|
|
||||||
|
Login in Administrationsoberfläche unter http://localhost/typo3 (localhost durch IP-Adresse ersetzen)
|
||||||
|
|
||||||
|
### Schritt 1: Menü Extensions
|
||||||
|
|
||||||
|
* Neben Extension "Find" auf den Würfel klicken, um die Extension zu aktivieren
|
||||||
|
|
||||||
|
### Schritt 2: Menü Page
|
||||||
|
|
||||||
|
* Seite auswählen, auf welcher der Katalog eingefügt werden soll, hier ```Congratulations``` (Startseite)
|
||||||
|
* Folgende Kästen löschen (Mülleimer-Symbol): "Start browsing", "Example Pages", "Test the CMS", "Divider", "Make it your own"
|
||||||
|
* Button +Content in Spalte "Normal" drücken und im Reiter ```Plugins / General Plugin``` unten auf der Seite im Punkt ```Selected Plugin``` die Erweiterung ```Find``` auswählen und anschließend oben den Save-Button betätigen.
|
||||||
|
|
||||||
|
### Schritt 3: Menü Template
|
||||||
|
|
||||||
|
* Gleiche Seite auswählen, auf der vorhin das Plugin eingefügt wurde (müsste noch vorausgewählt sein)
|
||||||
|
* Im Pulldown oben ```Info/Modify``` auswählen
|
||||||
|
* Button ```Edit the whole template record```
|
||||||
|
* Reiter ```Includes```: Rechts bei ```available items``` die Option ```Find (find)``` anklicken
|
||||||
|
* Oben den Save-Button betätigen
|
||||||
|
* Reiter ```General```: In Textfeld ```Setup``` Folgendes einfügen
|
||||||
|
|
||||||
|
```
|
||||||
|
plugin.tx_find.settings {
|
||||||
|
connections {
|
||||||
|
default {
|
||||||
|
options {
|
||||||
|
host = my_solr
|
||||||
|
port = 8983
|
||||||
|
path = /solr/gettingstarted
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
standardFields {
|
||||||
|
title = Titel
|
||||||
|
snippet = Urheber
|
||||||
|
}
|
||||||
|
facets {
|
||||||
|
10 {
|
||||||
|
id = Medientyp
|
||||||
|
field = Medientyp
|
||||||
|
sortOrder = count
|
||||||
|
}
|
||||||
|
20 {
|
||||||
|
id = Sprache
|
||||||
|
field = Sprache
|
||||||
|
sortOrder = count
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
|
@ -0,0 +1,66 @@
|
||||||
|
# 9.4 TYPO3-find anpassen
|
||||||
|
|
||||||
|
Über die Setup-Datei (vgl. den letzten Schritt aus Kapitel 9.3) kann die Erweiterung konfiguriert werden.
|
||||||
|
|
||||||
|
## Aufgabe 1: Ergänzen Sie eine weitere Facette
|
||||||
|
|
||||||
|
Hinweise:
|
||||||
|
|
||||||
|
* Verwenden Sie das Feld ```Jahr``` für die Facette
|
||||||
|
|
||||||
|
Literatur:
|
||||||
|
|
||||||
|
* Dokumentation von TYPO3-find: http://typo3-find.readthedocs.io/en/latest/index.html
|
||||||
|
|
||||||
|
## Lösung
|
||||||
|
|
||||||
|
```
|
||||||
|
plugin.tx_find.settings {
|
||||||
|
connections {
|
||||||
|
default {
|
||||||
|
options {
|
||||||
|
host = my_solr
|
||||||
|
port = 8983
|
||||||
|
path = /solr/gettingstarted
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
standardFields {
|
||||||
|
title = Titel
|
||||||
|
snippet = Urheber
|
||||||
|
}
|
||||||
|
facets {
|
||||||
|
10 {
|
||||||
|
id = Medientyp
|
||||||
|
field = Medientyp
|
||||||
|
sortOrder = count
|
||||||
|
}
|
||||||
|
20 {
|
||||||
|
id = Sprache
|
||||||
|
field = Sprache
|
||||||
|
sortOrder = count
|
||||||
|
}
|
||||||
|
30 {
|
||||||
|
id = Jahr
|
||||||
|
field = Jahr
|
||||||
|
sortOrder = count
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Bonus: Darstellung der Trefferliste und Detailseite anpassen
|
||||||
|
|
||||||
|
Für die Anpassung der Detailseiten müssen gemäß der Dokumentation von TYPO3-find die Dateien ```Result.html``` und ```Detail.html``` im Ordner ```Resources/Private/Partials/Display/``` bearbeitet werden. Da diese im Docker-Container liegen, ist die Bearbeitung nicht ganz so einfach. Hier ein mögliches Vorgehen:
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo docker exec -it typo3-web bash
|
||||||
|
|
||||||
|
apt-get install nano
|
||||||
|
export TERM=xterm
|
||||||
|
|
||||||
|
cd /var/www/html/typo3conf/ext/find/Resources/Private/Partials/Display/
|
||||||
|
|
||||||
|
nano Result.html
|
||||||
|
nano Detail.html
|
||||||
|
```
|
Loading…
Reference in New Issue