Typo3
Installation
-
Typo3 Source-Paket herunter laden
-
(evtl. Dummy-Website bei Neuinstallation herunter laden)
-
Dateien ins htdocs (oder entsprechendes) Verzeichnis kopieren
-
im Backend einloggen mit admin:password -> Passwort ändern unter User->Setup
-
Install-Tool Passwort ändern unter Tools->Install->10:About
-
ImageMagick 4.2.9 installieren, wenn noch nicht auf dem Rechner vorhanden (nur 1x per Rechner)
-
Install-Tool->5:All Configuration
- [GFX][gdlib_2] => 1
- [GFX][im] => 1
- [GFX][im_path] = /xampp/ImageMagick/
- [GFX][TTFdpi] = 96
- [SYS][sitename] = MyFirst
- [SYS][ddmmyy] = d.m.Y
- [SYS][setMemoryLimit] = 32
- [BE][warning_email_addr] = .... (Email-Adresse des Administrators)
- [BE][forceCharset] = utf-8
- [BE][loginLabels] = Benutzername|Passwort|Interface|Anmelden|Abmelden|Backend,Front End|Administration Login on ###SITENAME###|(Notiz: Cookies und JavaScript müssen aktiviert sein!)|Wichtige Nachrichten:|Die Anmeldung ist fehlgeschlagen. Achten Sie auf richtige Schreibweise, Groß- und Kleinschreibung.
1-2-3 Install Tool
- nach dem Kopieren der Dateien: http://Domain(/Verzeichnis)/
- Install-Tool startet automatisch, da Typo3 noch nicht installiert wurde
- 1: DB-Zugang angeben
- 2: neue DB anlegen
- 3: Beispiel-Tabellen oder Dummy-Website-Tabellen importieren
Typo3-Configuration (Install-Tool im nomal-mode)
- Install-Tool Passwort ändern!!! (10: About)
- Encryption Key festlegen (1: Basic Configuration)
- Weitere Konfigurationen und Tests..
Typo3-Backend (Administration der Inhalte)
- Kategorie->User->Setup->"new password" 2 mal eingeben!!!
Vergessenes admin-Passwort wieder herstellen
- MySql: Tabelle be_users Feld password ändern -> neues Passwort eintagen
- MySql: UPDATE be_users SET password=md5(password) WHERE username='admin'
Backend auf Deutsch umstellen
-
einloggen im Backend
-
deutsche Spracherweiterung installieren
- Extension Manager
- Dropdown "Menu:" -> Translation handling
- "German" auswählen
- [Save selection]
- [Check Status ...]
- wenn keine Fehler auftraten -> [Update from Repository]
-
User->Setup
- "Backend-Sprache:" -> Deutsch [German]
-
Cache löschen -> Browser aktualisieren
Redaktion im Backend
Dateiliste zum Download (Typ: Dateiverweise)
-
neues Inhaltselement -> Dateiverweise (Filelinks)
-
Abschnitt "Dateien:" -> Ordnersymbol für Elementbrowser
- Ordner wählen / evtl. neu anlegen
- evtl. Dateien hochladen
- gewünschte Dateien durch das +Zeichen zur Liste hinzufügen
- Elementbrowser schließen
-
Dateiliste wie gewünscht sortieren
- zu verschiebende Datei auswählen
- durch Pfeile neben der Liste nach oben bzw. unten bewegen
- falls Datei aus der Liste entfernt werden soll -> Papierkorb neben der Liste
-
"zeige Dateigröße" falls gewünscht
-
"Beschreibungen:" zu jeder Datei hinzufügen
- jede Zeile in dem Textfeld ist einer Datei im Dateifeld zugeordnet
- zeilenweise Reihenfolge ist für die Zuordnung verantwortlich
Datentabelle (Typ: Tabelle)
-
neues Inhaltselement -> Tabelle (Table)
-
Speichern ohne Schließen
-
Tabellenassistent öffnen (Table wizard) neben dem Feld "Text:"
-
[ ] kleine Felder evtl. deaktivieren -> speichern
-
Zellen füllen / Zeilen u. Spalten anlegen oder löschen / Zeilen u. Spalten verschieben
-
Speichern und Schließen (des Tabellenassistenten)
-
Speichern des Inhaltselementes
Mail-Formular (Typ: Formular)
-
neues Inhaltselement -> Formular
-
Speichern ohne Schließen
-
Formularassistent öffnen (Forms wizard) neben dem Feld "Text:"
- jede Zeile im Assistenten entspricht genau einem Formularfeld
- Felder anlegen, löschen oder verschieben
- Details einstellen - abhängig von gewähltem "Typ:"
- Absendeschaltfläche beschriften
- Festlegung, ob HTML-Mail oder nicht
- Betreff festlegen
- Empfängeradresse für die Formulardaten festlegen
- Formularassistent speichern und schließen
-
Zielseite im Elementbrowser wählen
- diese erscheint im Browser nach dem Absenden des Formulars,
- muss evtl. vorher angelegt und mit Inhalt (z. B. "Vielen Dank...") gefüllt werden
Template anlegen
-
Seite anlegen, falls noch nicht geschehen
-
Modul Web->Templates
-> Wurzelseite auswählen (von dieser Seite aus abwärts werden alle Seiten dieses Template ebenfalls verwenden. Vererbung)
-
(kein Standard-Template auswählen) [Create Template for a new Site]
Konstanten (Constants)
Konstanten sind Elemente, die innerhalb der Website mehrfach vorkommen können. Z. B. Telefonnummern, Namen u.s.w. Konstanten werden im Constants-Editor bearbeitet.
-
Modul Web->Template
-
Seite auswählen, in der das Template angelegt wurde, dessen Konstanten geändert werden sollen
-
Dropdown rechts oben muss auf "Info/Modify" stehen (Liste der Template Elemente sollte zu sehen sein)
-
Stift vor Konstanten (Constants) anklicken zum Bearbeiten der Konstanten
Setup (TypoScript-Template) bearbeiten
-
Modul Web->Template
-
Seite auswählen, in der das Template angelegt wurde, dessen Setup geändert werden soll
-
Dropdown rechts oben muss auf "Info/Modify" stehen (Liste der Template Elemente sollte zu sehen sein)
-
Stift vor Setup anklicken zum Bearbeiten des TypoScript-Templates
Setup in einer externen Datei bearbeiten
Im normalen Setup des Templates muss folgender Code eingebunden werden, um eine externe Datei einzubinden:
<INCLUDE_TYPOSCRIPT:source="FILE: fileadmin/templates/tmpl-01/template.ts">
TypoScript
Kommentare
/ ... einzeiliger Kommentar
# ... einzeiliger Kommentar
/* ~~~~ */ mehrzeiliger Kommentar
Seiten-Objekt
PAGE: erzeugt eine Seite, hier liegen alle Elemente, die auf der Seite angezeigt und verwendet werden sollen
Inhalts-Objekte
TEXT: stellt Funktionen zur Ausgabe von einfachem Text zur Verfügung
seite = PAGE
seite.10 = TEXT
seite.10.value = Hallo Welt!
seite.10.wrap = <p>|</p>
HTML: stellt Funktionen zur Ausgabe von HTML zur Verfügung
seite = PAGE
seite.10 = HTML
seite.10.value= Hallo Welt!
seite.10.value.wrap = <p>|</p>
GIFBUILDER: stellt Funktionen zur erzeugung von Bildern mit Text zur Verfügung
seite = PAGE
seite.10 = IMAGE
seite.10.file = GIFBUILDER
seite.10.file {
XY = 200,150
format = jpg
quality = 90
10 = IMAGE
10.file = fileadmin/bilder/blume2.gif
}
Eigenschaften des GIFBUILDER-Objektes:
1,2,3,... => Ebenen im Gesamtbild
XY => Abmessungen des Gesamtbildes
format => Grafikformat des Gesamtbildes (gif, jpg, png)
transparentBackground => 1/0 Hintergrund wird bei GIF-Grafiken transparent gesetzt
transparentColor => 1/0 Farbe am Pixel der Position 0,0 wird als transparent gesetzt
quality => 0..100 JPG-Qualität
backColor => #000000...#FFFFFF Hintergrundfarbe des Bildes
maxWidth => maximale Breite des Gesamtbildes
maxHeight => maximale Höhe des Gesamtbildes
In den Ebenen können nun weitere Objekte platziert werden. Das können Objekte der folgenden Typen sein:
TEXT => Text-Ebene
BOX => ein Rechteck
IMAGE => Bild-Ebene
Eigenschaften von TEXT des GIFBUILDER-Objektes:
text => Text, der im Bild geschrieben werden soll
textMaxLength => max. erlaubte Buchstabenzahl
maxWidth => max. erlaubte Länge des Textes in Pixel
fontSize => Schriftgröße
fontColor => #000000...#FFFFFF Schriftfarbe
fontFile => Schriftartendatei z. B. fileadmin/fonts/kartika.ttf
angle => Ausgabe-Winkel
align => left, center, right horizontale Ausrichtung
niceText => 1/0 Glättung des Textes durch Weichzeichnen
antiAlias => 1/0 Glättung des Textes durch Antialiasing
offset => Positionierung gegenüber der 0,0 Koordinate des Gesamtbildes (die Schrift 0,0-Koordinate ist links unten, die des Bildes links oben)
shadow => Schattenefekt
Eigenschaften von IMAGE des GIFBUILDER-Objektes:
file => Dateiname der Bilddatei
offset => Position des Bildes innerhalb des Gesamtbildes (x,y)
tile => Kachelung des Bildes im Gesamtbild (x,y : Anzhal der Kacheln in horizontaler und vertikaler Richtung)
align => (vert, horiz) Ausrichtung innerhalb des Geamtbildes: horizontal l,c,r - vertikal t,c,b
Designvorlage
Designvorlage aufbauen
Marker: für kleine Platzhalter
- in der Design-Vorlage: ###MARKERNAME###
- Ansprechen im TS: ...marks.MARKERNAME...
Subparts: für größere Platzhalter-Bereiche
- in der Design-Vorlage:
Start-Element: <!-- ###SUBPARTNAME### Start -->
Blindtext: Zum Simulieren der Inhalte, die später ersetzt werden durch die Inhalte aus der Datenbank
Ende-Element: <!-- ###SUBPARTNAME### Ende -->
- Ansprechen im TS: ...subparts.SUBPARTNAME...
spezieller Subpart für den Bereich, auf den das TS-Template angewendet werden soll
<body>
<!-- ###MEINDOK### -->
... auf diesen Bereich wird das TS-Template angewendet...
<!-- ###MEINDOK### -->
</body>
Alles(!) rundherum - auch die body-Tags werden aus dieser Datei entfernt und Typo3 setzt hier eigene Elemente ein, um die HTML-Seite komplett zu erstellen.
Dem TS-Template muss noch mitgeteilt werden, wie der Dokumentbereich in der Designvorlage heißt:
seite = PAGE
seite.10 = TEMPLATE
seite.10.template = FILE
seite.10.template.file = fileadmin/templates/tmpl-05/design-template.html
seite.10.workOnSubpart = DOKUMENT
...
Datenbank-Inhalte am Marker einfügen
Voraussetzung: Installation der Erweiterung "css-styled-content"
- Modul -> Template -> Template-Seite öffnen
- "Info/Modify"
- "Click here to edit whole template record"
- Bereich: "Include static (from extensions):"
- CSS Styled Content muss in der linken Box gelistet sein
- anklicken, wenn nicht vorhanden
- wenn auch in der rechten Box nicht vorhanden, dann als Erweiterung nachinstallieren
Verwendung von css_styled_content im TS-Template:
- ...subparts.SUBPARTNAME < styles.content.get
Menüs generieren
Menü-Element
HMENU
- als Element für das gesamte Menü
- enthält weitere Definitionen für die Unterpunkte
Option-Split
In einem Menü und anderen Elementen, entstehen automatisch mehrere Teilelemente - die Menüpunkte zum Beispiel.
...wrap = Erstes |*| ALLE Mittleren |*| Letztes
...wrap = < | | |*| | | |*| | >
erzeugt ein Menü bei dem jeder Menüpunkt durch ein Pipe-Symbol (|) vom anderen getrennt ist. Der erste Menüpunkt hat links ein Kleiner-als-Zeichen (<) und der letzte Menüpunkt hat rechts ein Größer-als-Zeichen (>)
Volltextsuche
Suchseite einrichten
Die Volltextsuche wird über eine Extension realisiert. Folgende Schritte sind zur fertigen Suche notwendig:
-
Installation der Extension "Indexed Search Engine"
-
Anlegen einer Suchseite
-
Anlegen eines Content-Elements
- Typ: "General Plugin"
- Plugin: "Indexed search"
-
Einschalten der Indizierung im Template
- TS: im Seiten-Element (z. B. "seite") den Eintag hinzufügen: seite.config.index_enebale = 1
-
evtl. Rules deaktivieren:
- TS: außerhalb des Seiten-Elements den Eintrag hinzufügen: plugin.tx_indexedsearch.show.rules = 0
Suchfeld im Design-Template
HTML: Formular einfügen
<form action="index.php?tx_indexedsearch[sword]">
<input name="id" value="23" type="hidden" />
<input name="tx_indexedsearch[sword]" type="text" />
<input type="submit" />
</form>
23 ist die ID der Seite, in der das Such-Plugin enthalten ist.
Mehrsprachigkeit einrichten
Um mehrere Sprachen verwenden zu können, müssen folgende Schritte durchgeführt werden:
-
gewünschte Sprache zur Verwendung freigeben
-
Alternative Seitenvarianten für die neue Sprache anlegen
-
Standard-Inhalte auf die neue Seite kopieren und übersetzen
-
Sprachmenü einrichten im TS und im HTML-Design (falls noch nicht geschehen)
-> neue Sprache als Menüpunkt hinzufügen
1. gewünschte Sprache zur Verwendung freigeben
2. Alternative Seitenvariante für jede Seite anlegen
-
Seite aufrufen
-
Dropdown rechts oben ändern zu "Languages/Sprachen"
-
Dropdown hinter "Make new translation of this page: " auf neue Sprache einstellen
-
Grundeinstellungen für die neue Sprache dieser Seite eintragen
-
speichern, schließen
3. Standard-Inhalte auf die neue Sprache kopieren
4. Sprachmenü einrichten
Benutzer verwalten
Benutzergruppen
Benutzergruppen dienen der Festlegung von allgemeinen Regeln, die für eine Gruppe von Benutzern gelten.
Benutzergruppe anlegen
-
Auf T3-Wurzel (Erdkugel) klicken -> New
-
"Backend usergroup"
-
Details festlegen
- Name der Benutzergruppe
- [x] Include Access Lists
- detaillierte Berechtigungen festlegen
- speichern
Alle Benutzergruppen gemeinsam sind aufgelistet unter dem Modul "List" bei Klick auf die T3-Wurzel
Eigene PHP-Scripte in Typo3
Zur Nutzung eines eigenen PHP-Scripts müssen folgende Schritte abgearbeitet sein:
-
Sicherstellen, dass Inhalts-Typ Script vorhanden ist
wenn nicht, dann folgendes ändern:
- Datei "typo3/sysext/css_styled_content/pageTSconfig.txt"
=> auskommentieren: #CType.removeItems = div,rte,script,splash
-
PHP-Script muss vorhanden sein
Inhalt, der in der T3-Website erscheinen soll muss in der Variable $content abgelegt werden
-
Extension-Template in der gewünschten Seite oder höher
T3-Menü -> Web -> Template
-> Seite im Seitenbaum anklicken
-> "Click here to create an extension template"
Setup:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tt_content.script = CASE
tt_content.script {
key.field = select_key
HALLOMARKER = PHP_SCRIPT_EXT
HALLOMARKER.file = fileadmin/myscripts/myshop-produkte/produkte.php
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
=> HALLOMARKER ist frei wählbar
-
neues Inhaltselement anlegen vom Typ "Script"
- im Feld CODE muss der Name des oben gewählten Markers eingetragen werden
Frontend-Benutzer (website user)
Frontend-Benutzer sind Besucher der Website, die sich mit ihrem Benutzernamen einloggen können und dadurch Zugriff auf Bereiche der Website bekommen, die anderen verborgen sind.
Frontend-Benutzer einrichten
-
neue Seite einfügen an beliebiger Stelle einfügen (am besten direkt als Unterseite der Seite, die das Root-Template enthält)
-
Seiteneigenschaften:
- Type: "SysFolder"
- Contains plugin: "Website users"
- speichern und schließen
-
Übergeordnetes Template -> Constants öffnen
-> "styles.content.loginform.pid = 27" (27 ist die id des SysFolders, der die FE-User enthält)
-
gute Übersicht über alle Website user und Website usergroups -> Modul:List des SysFolders
-
im SysFolder einen neuen Datensatz anlegen -> Website usergroup (wenn noch nicht geschehen)
-
im SysFolder einen neuen Datensatz anlegen -> Website user
Eine Seite inkl. Unterseiten nur einer bestimmten Website-Usergroup freigeben
-
Seiteneigenschaften der zu versteckenden Seite
-
General Options (continued) -> Usergroup wählen, für die dieser Bereich offen sein soll
-
nun sehen nur noch die entsprechenden User dieser Gruppe den Link und diese Seite