TYPO3  Version 4.5.x LTS

 

 

 

 

 

 

 

Anleitung

 

zur

 

Website Einrichtung

 

 

Dokument Version 1.2

 

 

 

 

 

 

 

 

 

 

 

Letzte Änderung von RealPowerWork am 30.04.2012

 

Copyright © 2012 by RealPowerWork

 


 

Inhaltsverzeichnis

 

1        Einleitung.. 10

1.1.        Formales. 11

2        Vorlagen Website erstellen.. 12

2.1     Website Definitionen festlegen.. 12

2.2     Inhalte festlegen.. 12

2.3     Design festlegen.. 12

2.4     Designvorlage vorbereiten.. 13

2.4.1          HTML Vorlagedatei als TYPO3 HTML Vorlage verwenden. 25

2.5     Struktur der Website festlegen.. 26

2.6     Funktionen der Website festlegen.. 26

3        Grundlagen TYPO3 HTML Templates. 27

3.1     Manuelle Erstellung des HTML Templates. 27

Einbindungsmöglichkeiten von HTML Dateien als TYPO3 HTML Template. 34

3.2     Webseiten Höhe festlegen im MS Internet Explorer.. 35

3.3     CSS Hover funktioniert nicht im MS Internet Explorer.. 35

3.4     Boxmodelhack für Microsoft Internet Explorer.. 35

4        Vorbereitung Linux System für TYPO3. 37

4.1     Installation von Apache, PHP und MySQL.. 37

4.2     Apache und MySQL Serverdienste starten.. 38

4.2.1          Apache (PHP) Serverdienst manuell starten. 38

4.2.2          Apache (PHP) Serverdienst automatisch starten. 38

4.2.3          PHP5 Version auf 5.3.8 Updaten unter SLES 11. 39

4.2.4          MySQL Serverdienst manuell starten. 41

4.2.5          MySQL Serverdienst automatisch starten. 41

4.3     Zusätzliche PHP Module installieren.. 41

4.3.1          Installation von PHP Modulen „gd“, „mysql“, „zlib“ und „curl“. 42

4.4     SLES11 Firewall Konfigurieren.. 44

5        Neuinstallation von TYPO3. 45

5.1     Installation von TYPO3 auf Linux SLES11 Servern.. 45

5.2     Verzeichnisrechte für TYPO3 unter Linux vergeben.. 45

5.3     Dateilinks auf das TYPO3 Source Paket setzen.. 46

5.4     MySQL Datenbank kontrollieren.. 47

5.4.1          Passwort für den MySQL Admin (root) vergeben. 47

5.4.2          Kontrolle der Datenbank-Engines auf dem Server. 47

5.4.2.1       Anzeige der Engines unter “phpMyAdmin”. 48

5.4.3          Kontrollieren Sie den eingestellten Zeichensatz des MySQL Servers. 48

5.4.3.1       Umstellung des MySQL Servers Standard Zeichensatzes auf „utf-8“. 49

5.4.3.2       Anzeige der Koallation (Collation) unter „phpMyAdmin“. 50

5.4.4          Manuelle Erstellung einer TYPO3 Datenbank mit „utf-8“. 51

5.4.5          Konvertierung einer vorhanden Datenbank in „utf-8“. 51

5.4.6          Ausgabe im Frontend in UTF-8 erzwingen. 56

5.4.7          Datenbankreparatur ausführen. 57

5.4.8          Fehler bei MySQL Server oder Datenbanken. 57

5.4.8.1       Fehler beim Ausführen der Datei „db_utf8_fix.php“ kommt nur „Access denied“. 57

5.4.8.2       Fehler bei Login auf MySQL Server 57

5.4.8.3       Kontrollieren Sie den verwendeten Sortierung (Collation) der Tabellen. 58

5.4.8.4       Fehler nach Rücksicherung der Datenbank werden Sonderzeichen nicht angezeigt 58

5.4.8.5       Fehler nach Umstellung von „InnoDB“ aus „MyISAM“ kommt bei „COMPARE“ immer ein Engine Fehler 59

5.4.8.6       Fehler bei „COMPARE“ kommt immer Fehler mit „ENGINE=“ (nichts) 60

5.5     Speicherlimit PHP erhöhen.. 60

5.5.1          Erhöhung vom Speicherlimit ohne Zugriff auf „php.ini“. 60

5.6     TYPO3 Install Tool das erste Mal starten.. 61

5.6.1          Schritte 1-2-3 im TYPO3 Install Tool 62

5.6.2          „Configure TYPO3“ im Install Tool 65

5.6.3          TYPO3 Install Tool später nochmals starten. 66

5.6.4          Fehler im TYPO3 Install Tool 66

5.6.4.1       Fehler „Zugriff verweigert“ beim Aufruf vom „TYPO3 Install Tool“. 66

5.6.4.2       Fehler „TYPO3 Install Tool“ lässt sich nicht starten. 68

5.6.4.3       Fehler „TYPO3 Install Tool“ mit „The following PHP module(s) is/are missing…“. 68

5.6.4.4       Fehler bei nochmaliger Ausführung vom „TYPO3 Install Tool“ erscheint plötzlich ein Passwort Eingabefenster 69

5.6.4.5       Fehler nach „TYPO3 Install Tool“ auf der http://localhots/cms Website. 69

5.6.4.6       Fehler nach „TYPO3 Install Tool“ auf der TYPO3 Website über Hostnamen. 70

6        Update Installation TYPO3. 71

6.1     Ablauf einer TYPO3 Update Installation.. 71

6.2     Update der TYPO3 MySQL Datenbank.. 75

6.2.1.1       Umstellung vom Zeichensatz von <latin1> auf <utf8>. 76

6.3     Update der TYPO3 Source Dateien auf V4.5.x.. 78

6.4     Möglich Fehler bei Update Installation.. 79

6.4.1.1       Fehler „localconf.php is not found!”. 79

6.4.1.2       Fehler beim Starten des TYPO3 Install Tool kommt eine leere (weiße)Seite. 79

6.4.1.3       Fehler „Oops, an error oocured! The page is not configured! [type= 0][]“. 80

6.4.1.4       Fehler TYPO3 V4.5.x beim Aufruf vom TYPO3 Install Tool nur leere (weiße) Seite. 80

4.1.1.1       Fehler „The Install Tool is locked.“ beim Starten des TYPO3 Install Tool 81

6.4.1.5       Fehler der Login mit dem TYPO3 Install Tool Kennwort geht nicht 81

6.4.1.6       Fehler beim Login in das TYPO3 Backend. 81

6.4.1.7       Fehler bei Tabellen sind verschiedene Collation eingestellt 82

6.4.1.8       Fehler beim normale Website kommt eine leere (weiße) Seite. 83

6.4.1.9       Fehler auf neuer TYPO3 Website kommt „Please proceed to the Update Wizard“. 83

6.4.1.10     Fehler auf Website „The requested page didn`t have proper…the tree-root!”. 83

6.4.1.11     Fehler in der umgestellte Website wir eine graue Box angezeigt 84

6.4.1.12     Fehler in der Media Auswahl (DAM) für Bilder wird nichts angezeigt 85

6.4.1.13     Fehler auf Website werden Banner Bilder nicht angezeigt 85

6.4.1.14     Fehler nach Konvertierung zu „utf8“ werden Umlaute und Sonderzeichen immer mit zwei Zeichen angezeigt 86

6.4.1.15     Fehler „TYPO3 requires PHP 5.3.0 or higher“ erhalten Sie unter TYPO3 4.6.x. 88

7        Zusätzliche neue TYPO3 Instanz erstellen.. 90

7.1     Installation einer zusätzlichen TYPO3 Instanz.. 90

7.2     Neuen virtuellen Webserver in Apache erstellen.. 91

7.2.1.1       Fehler beim Starten vom Apache Server „NameVirtualHost …. has no VirtualHosts“. 92

7.2.1.2       Fehler beim Starten vom Apache Server „mixed * and non-* …not supported“. 93

7.2.1.3       Fehler beim starten Apache Server “[error] (EIA2)Name or service not know”. 93

8        Grafikfunktion von TYPO3 einrichten.. 95

8.1     Installation von GDLib.. 95

8.1.1          Kontrolle ob GDLib installiert ist 95

8.1.1.1       Fehler: „GDLib using PNG“ unter „All Configuration“ nicht aktiviert 96

8.2     Installation von GraphicsMagick.. 96

8.2.1          Testen von „Delegate“ in GraphicsMagick. 99

8.2.1.1       Prüfen von „Delegate“ in einem Terminalfenster 99

8.2.1.2       Prüfen von „Delegate“ mit einem PHP Script 100

8.2.1.3       Prüfen von „Delegate“ mit PHP Script im TYPO3 Verzeichnis. 101

8.2.1.4       Prüfen von „Delegate“ mit dem TYPO3 Install Tool 102

8.2.2          Fehler Install GraphicsMagick. 102

8.2.2.1       Fehler beim „./configure“ kommt „C compiler cannot create executables“. 102

8.2.2.2       Fehler beim „./configure“ werden in der „Delegate Configuration“ immer „no“ angezeigt 102

8.2.2.3       Fehler beim „make“ kommt „’strcpy’ was not declared in this scope“. 104

8.2.2.4       Fehler „/usr/local/bin/gm identify:Request did not return an image.”. 104

8.2.2.5       Fehler „Unable to access configuration file (delegates.mgk) [No such file or directory]“. 105

8.2.2.6       Fehler bei RPM Installation von GraphicsMagic 1.3.12 „warning:…“. 105

8.3     Installation von ImageMagick.. 106

8.3.1.1       Fehler keine Grafiken unter ImageMagick Installation. 107

8.4     TYPO3 Graphiktests durchführen.. 107

8.4.1          Testen der Grafiken unter GraphicsMagick. 108

8.4.2          Testen der Grafiken unter ImageMagick. 109

8.5     Fehler bei den Graphiktests. 110

8.5.1.1       Fehler „No ImageMagick installation available“ unter „Basic Configuration“. 110

8.5.1.2       Fehler „Test skipped“ erscheint bei allen „Image Processing“ Tests. 111

8.5.1.3       Fehler bei den „Image processing“ Tests kommen nur Sonderzeichen. 112

8.5.1.4       Fehler für PNG Grafiken werden im Backend keine Thumbnails angezeigt 112

8.5.1.5       Fehler die Schrift TrueType Test geht über die Farbfläche hinaus. 113

8.5.1.6       Fehler bei „Read JPG“. 113

8.5.1.7       Fehler „Read PNG“ beim Test „Reading image formats“. 114

8.5.1.8       Fehler „Read TIF“ beim Test „Reading image formats“ mit GraphicsMagick. 114

8.5.1.9       Fehler „Read PCX“ beim Test „Reading image formats“. 115

8.5.1.10     Fehler „Read TGA“ beim Test „Reading image formats“. 116

8.5.1.11     Fehler „Read PDF“ und „Read AI“ beim Test „Reading image formats“. 116

8.5.1.12     Fehler mit „Write GIF“ beim „Writing GIF and PNG“ Test 118

8.5.1.13     Fehler mit „Write PNG“ beim „Writing GIF and PNG“ Test 119

8.5.1.14     Fehler mit „PNG to PNG“ beim „Scaling Image“ unter GraphicsMagick. 120

8.5.1.15     Fehler mit „GIF to JPG“ beim „Scaling Image“. 120

8.5.1.16     Fehler „Combining using a GIF mask“ unter ImageMagick. 121

8.5.1.17     Fehler „niceText“ mit TrueType oder „niceText“ mit Schatten. 121

8.5.1.18     Fehler „File size very different from reference“ “ bei TrueType Font „niceText“. 122

8.5.1.19     Fehler „File size very different from reference“ bei „niceText“ mit Shadow.. 123

9        TYPO3 Installation Anpassung.. 124

9.1     Passwortsicherheit erhöhen („saltedpassword“) 124

9.1.1          Installation von „saltedpassword“. 124

9.1.1.1       Fehler im Backend nach aktivierung von „rsaauth“. 127

9.1.1.2       Fehler bei Aktivierung von „saltedpassword“ kommt „SaltedPassword will not work until…“. 129

9.2     Ein „favicon.ico“ für die Website festlegen.. 129

9.3     Überprüfung Indexe nach Update.. 130

9.3.1.1       Fehler bei  „Admin Tools“ – „DB Überprüfung“ – „Update now“. 130

9.4     Testen von Sendmail.. 130

9.4.1.1       Fehler bei „sendmail“ mit PHP „SafeMode = on“. 130

9.4.1.2       Fehler bei „sendmail“ auf einem lokalen Linux Server 131

9.5     PHP Einstellungen.. 131

9.5.1          PHP SafeMode Aktivieren. 131

9.5.2          PHP-Speicherlimit erweitern. 132

9.5.3          PHP Upload Limit erweitern. 132

9.5.3.1       Fehler „No file upload! Probaly the file was to large for PHP#s internal limit…“. 132

9.6     FTP Zugang für TYPO3 und vsFTP einrichten.. 134

9.6.1          vsFTP Server unter SLES 11  Installieren. 134

9.6.2          FTP Zugang für TYPO3 mit vsFTP einrichten. 134

10      Erstellung der Website in TYPO3. 136

10.1      Einloggen in das TYPO3 Backend (BE) 136

10.2      TYPO3 Extension Manager.. 137

10.2.1       Anpassungen wenn TYPO3 Install Tool verfügbar. 137

10.2.2       Anpassungen direkt in der “localconf.php”. 137

10.2.3       Extension Manager Settings. 138

10.2.4       Extension Manager Liste (Repository) laden. 138

10.2.4.1     Fehler „Retrieve/Update“ kommt „Maximum execution time 15 exceded in…“. 139

10.3      Installieren des deutschen Sprachpaketes. 139

10.3.1       Installation von Sprachen für Backend (BE) 139

10.3.2       Fehlerliste Backend (BE) und Extension Manager. 141

10.3.2.1     Fehler im Backend erscheint immer die Meldung „Invalid Security Token!“. 141

10.3.2.2     Fehler Mirror Liste oder Repository wird nicht angezeigt. 141

10.3.2.3     Fehler unter „Import Extension“ beim Klicken auf „Look up“ folgende Fehlermeldung erhalten: 141

10.3.2.4     Fehler im Firefox leere Seite oder im IE "Seite kann nicht angezeigt werden". 142

10.3.2.5     Fehler „Call to undefined function: curl_init()“. 142

10.3.2.6     Fehler „ allow_url_fopen is off, cURL is not enabled in the Install Tool “. 142

10.3.2.7     Fehler „Update from repository“ bringt immer „Could not fetch translation status“. 143

10.4      Sprache des Backend (BE) auf Deutsch einstellen.. 145

10.5      Einrichtung der Root Website und des Templates. 146

10.5.1       Änderung bei den inkludierten statischen Templates. 146

10.5.2       Erstellung des Root-Template in TYPO3. 146

10.5.2.1     Fehler beim Erstellen einer neuen Seite kommmt „Unknow column…“. 148

10.5.3       Ausgabe auf Website von TYPO3 testen. 149

10.5.4       Sprache des Frontend (FE) Deutsch einstellen. 149

10.5.5       Website mit der Extension „Template Auto-parser“. 150

10.5.6       Root Website mit der Extension „Template Voila“. 151

10.5.6.1     Template Voila Wizard starten. 153

10.5.6.2     Fehler beim Anklicken von „Seite“ in der Navigation. 155

10.5.6.3     Fehler TemplaVoilà beim Anklicken „Start wizard now!“. 155

10.5.6.4     Fehler TemplaVoilà wird kein HTML Template angezeigt 156

10.5.6.5     Fehler TemplaVoilà beim Anzeigen der Webseite. 156

10.5.7       Verwendung der YAML Extension für die Website. 157

10.5.8       Zusätzliche Einstellungen des Root-Templates. 157

10.5.9       Ausführen vom „Template Analysis“ für das Root Template. 157

10.5.9.1     Grüne Felder in Template Analysis werden angezeigt 158

10.5.9.2     Fehler bei Template Analysis kommt „Object copied in this line ‚SPC > .NO‘ would leave the…“. 158

10.6      Rich Text Editor (htmlArea) 159

10.6.1       Installation des Rich Text Editor. 159

10.6.2       Einstellungen für die Rich Text Editor im Erweiterungs-Manager. 159

10.6.3       Funktionen für die Bearbeitung von Texten im RTE ausblenden. 161

10.6.4       Überschriften (Absatzarten) aus dem RTE ausblenden. 161

10.6.5       Schriftarten im RTE für Standard-Formatierung einstellen. 162

10.6.6       Eigene Überschriften für den RTE definieren. 162

10.6.7       Erweiterte Konfiguration vom „htmlArea RTE“. 163

10.6.8       Fehler in RTE Extension. 166

10.6.8.1     Fehler Auswahl von Text Stil und Link anlegen nicht möglich. 166

10.7      Erweiterung für Mehrsprachigkeit (Multilanguage) 166

10.7.1       Vorbereitung der TYPO3 Konfiguration auf Mehrsprachigkeit 167

10.7.2       Sprachdateien für TYPO3 Downloaden. 167

10.7.3       Vorbereitung der Website auf Mehrsprachigkeit 168

10.7.4       Seiten in anderer Sprache anlegen. 169

10.7.5       Sprachdefinitionen im Root Template anlegen. 170

10.7.6       Standardmenü für Sprachumschaltung (ohne Extension) 171

10.7.7       Eigenes Menü  für Sprachumschaltung  (ohne Extension) 172

10.7.8       Sprachumschaltung in Website mit „sr_language_menu“. 173

10.7.9       Automatische Spracherkennung mit "rlmp_language_detection“. 174

10.7.10     Fehler bei Mehrsprachigen (Multilanguage) Webseiten. 174

10.7.10.1        Fehler die Sprachumschaltung mit Symbole wird nicht angezeigt 174

10.7.10.2        Fehler im BE nach Umstellung der Website auf „utf8‘ kommt „Oops, an error occured!“. 174

10.7.10.3        Fehler beim Einfügen der Sprachdefinition kommt „Oops, an error occured!“. 175

10.7.10.4        Fehler im FE nach Umstellung der Website auf „utf-8‘ werden Umlaute nicht angezeigt 176

10.7.10.5        Fehler  bei „Convert to UTF-8“ kommt „Call to undefined method t3lib_div::fixed_lgd_pre()…“. 177

10.7.10.6        Fehler bei den Links wird nach Sprachumschaltung nicht “&L=1”,”&L=2“, etc. angehängt 177

10.7.10.7        Fehler bei den Print oder Tip-A-Fried Link wird nach Sprachumschaltung immer “&L=” angehängt 178

10.7.10.8        Fehler bei Spanischen Texten wird „Ó statt Sonderzeichen anzeigt 178

10.7.10.9        Fehler im Template Analysis oder im Admin Panel TS-Rendering. 179

10.7.10.10      Fehler im Admin Panel „Locale ‘en_UK’ not found.“ oder “’en_UK.utf-8’ not found.”. 181

10.8      Grundeinstellungen für HTML Formatierungen.. 181

10.9      Verzeichnisstruktur für CMS unter „fileadmin“. 183

11      Erstellung von Menüs. 184

11.1      Seitenstruktur in TYPO3 anlegen.. 184

11.2      Einrichtung Navigation für die Website.. 185

11.2.1       Vertikales Textmenü mit 2 Ebenen. 185

11.2.2       Vertikales grafisches Menü (GMENU) mit 2 Ebenen. 186

11.3      Einrichtung des Klickpfad Menüs (Breadcrumb) 188

11.4      Einrichtung des Bottom Menüs (Footerlinks) 189

11.5      Erstellung eines Sitemap Menüs. 190

11.6      Funktion „Top“ in Webseite einbauen.. 191

11.6.1       Fehler bei der Menüerstellung. 192

11.6.1.1     Fehler mit SPC unter TYPO3 4.4x „Please check that this is not a problem for you.“. 192

11.6.1.2     Fehler mit RealURL wird bei interne Link für „Top“ wird immer die Startseite aufgerufen. 193

12      Einrichtung von TYPO3 Extensions. 194

12.1      Extension Auflistung im „Ext Manager“. 194

12.2      Backup einer installierten Extension.. 195

12.3      Update von einer installierten Extension.. 196

12.3.1.1     Fehler bei Update einer Extension kommt „…could not be deleted!“. 197

12.3.1.2     Fehler bei Update einer Extension kommt „The T3X file could not be fetched“. 197

12.4      Extension Full Backup (w4x_backup) 198

12.4.1       Was macht diese Extension?. 198

12.4.2       Installation w4x_backup. 198

12.4.3       Sicherung (Backup) durchführen. 200

12.4.4       Fehler in w4x_backup. 202

12.4.4.1     Fehler bei Installation von w4x_backup. 202

12.4.4.2     Fehler bei Backup „[function.unlink]: No such file or directory“. 202

12.4.4.3     Fehler bei Backup „The operation was not performed“. 203

12.4.4.4     Fehler „Fatal error: Cannot user string offset as an array in ….“. 203

12.4.5       Manuelle Rücksicherung eines Backups. 204

12.4.5.1     Fehler „Access denied…“ bei der manuellen Rücksicherung der Datenbank. 204

12.4.5.2     Fehler „Unknow database…“ bei der manuellen Rücksicherung der Datenbank. 204

12.5      Extension Indexed Search Engine (indexed_search) 205

12.5.1       Was macht diese Extension?. 205

12.5.2       Installation. 205

12.5.3       Einrichtungen einer CSS-Datei für Indexed Search Engine. 206

12.5.4       Einfachere Searchbox verwenden. 208

12.5.5       Ergebnisse in Indexed Search nach Sprache anzeigen. 209

12.5.6       Installation für Indizierung von externen Dokumenten. 209

12.5.6.1     Erstellen eines Verzeichnisses für die Zusatzprogramme. 210

12.5.6.2     Installieren von HTMLDOC.. 210

12.5.6.3     Installation von XPDF. 210

12.5.6.4     Installation von CATDOC.. 211

12.5.6.5     Pfade für externe Programme in Indexed Search festlegen. 211

12.5.6.6     Konfiguration von Index Search für den „Crawler“. 212

12.5.6.7     Installation und Einrichtung vom „Crawler“ (crawler) Extension. 213

12.5.6.8     Testen der „Indexed Search“ Extension mit einer Webseite. 214

12.5.6.9     Testen der „Crawler“ Extension mit Dateien. 216

12.5.7       Fehler in Indexed Search. 217

12.5.7.1     Fehler im Admin Panel werden Module unter „/usr/local/bin/“ nicht gefunden. 217

12.5.7.2     Fehler „./configure“ vom Paket „xpdf“ mit „WARNING: Couldn‘t find freetype“. 217

12.5.7.3     Fehler im BE nach Definition von „open_basedir“ kommt leere Website. 218

12.5.7.4     Fehler „Indexed Search“ bei aktiven Inhalten keine Ergebnisse an. 218

12.5.7.5     Fehler „Indexed Search“ zeigt in der Ergebnisseite „/span“ in Text an. 218

12.6      Einrichtung eines Print Link (Druckerversion) 219

12.6.1       Print Link mit „type=98“. 219

12.6.2       Print Link mit eigenen Parameter „print=1“. 222

12.6.3       Einrichtung für Mehrsprachigkeit 222

12.6.3.1     Fehler mit plugin.alt.print wird „The page is not configured! [type= 98][]“. 223

12.6.3.2     Fehler bei „type=98“ Printlink wird ###CONTENT### anstatt der Seite angezeigt. 223

12.6.3.3     Fehler bei Verwendung von „type=98“ Printlink kommt eine leere Seite. 224

12.6.3.4     Fehler bei Verwendung von plugin.alt.print unter tt_news mit RealURL. 224

12.7      Einrichtung von Captcha (captcha) 225

12.7.1       Was macht diese Extension?. 225

12.7.2       Installation von Captcha. 225

12.7.2.1     Fehler Captcha Bild oder Grafik wird nicht angezeigt (zeigt x) 226

12.8      Einrichtung von freecap CAPTCHA (sr_freecap) 229

12.8.1       Installation von sr_freecap. 229

12.8.1.1     Installation der Extension für das „ve_guestbook“. 229

12.9      Extension Tip-A-Friend (tipafriend) 232

12.9.1       Installation. 232

12.9.2       Mehrsprachigkeit in Tip-A-Friend einbauen. 234

12.9.3       Liste der Fehler von der Tip-A-Friend Extension. 234

12.9.3.1     Fehler bei Verwendung Tip-A-Friend kommt „Oops, an error occured!“. 234

12.9.3.2     Fehler bei Verwendung Tip-A-Friend mit RealURL. 235

12.9.3.3     Fehler bei Tip-A-Friend mit Firefox/Netscape wird bei langen URL die Form verbreitert 235

12.9.3.4     Fehler beim Versand als HTML Email: Bei manchen Bildern nur Rahmen. 236

12.9.3.5     Fehler in Tip-A-Friend bei Versand an Chello (österreichischer Provider) 236

12.10         Umsetzung dynamischer auf statische URL.. 236

12.10.1     Einrichtung von statischen URL mit „mod_rewrite“. 237

12.10.2     Liste möglicher Fehler „mod_rewrite“. 238

12.10.2.1        Fehler beim Laden der Website nach Repository Update. 238

12.10.2.2        Fehlermeldung „Not Found“ bei Aufruf von Seiten über „mod_rewrite“. 239

12.10.2.3        Fehlermeldung „Internal Server Error“ bei Aufruf von Seiten über „mod_rewrite“. 239

12.10.2.4        Fehlermeldung TYPO3 „Error“ bei Aufruf von Seiten über „mod_rewrite“. 240

12.11         Extension Real URL (realurl) 240

12.11.1     Was macht diese Extension?. 240

12.11.1.1        Exempels. 240

12.11.1.2        Background. 240

12.11.1.3        Funktionen. 240

12.11.2     Installation vom PHP Modul „mod_rewrite für RealURL. 241

12.11.3     Installation RealURL mit “Enable automatic configuration”. 243

12.11.4     Einrichtung von RealURL ohne „Enable automatic configuration“. 244

12.11.5     Liste möglicher Fehler in RealURL. 247

12.11.5.1        Fehler mit eingerichteten “Real URL“: was not matching „xxxxxx“ actually found. 247

12.11.5.2        Fehler bei “Real URL“ funktionieren alle Seiten außer „TYPO3“. 248

12.11.5.3        Fehler mit eingerichteten “Real URL“: File „xxxxxx“ was not found! 249

12.11.5.4        Fehler mit eingerichteten “Real URL“: was not found keyword for a postVarSet 249

12.11.5.5        Fehler mit eingerichteten “Real URL“: could not found, closest page matching is. 250

12.11.5.6        Seiten mit „Real URL“ funktionieren nur wird im URL „cms“ verdoppelt 250

12.11.5.7        Fehler bei Tip-a-Friend wird URL falsch erstellt 251

12.11.5.8        Fehler in “RealURL management” bleibt „ID-to-path mapping“ leer 252

12.11.5.9        Fehler in RealURL-Verwaltung können Änderungen nicht abgespeichert werden. 252

12.11.6     Umstellung von RealURL auf andere Domain oder ein anderes Verzeichnis. 254

12.11.6.1        Fehler mit eingerichteten “Real URL“ CSS wird nicht gefunden. 254

12.12         Einrichtung Formhandler (formhandler) 255

12.12.1     Was macht diese Extension?. 255

12.12.2     Installation von Formhandler. 255

12.12.3     Anpassung Formhandler für Mehrsprachigkeit (Multilanguage) 262

12.12.4     Captcha in Mailformplus aktivieren. 263

12.12.5     Update vom MailformPlus auf Formhandler. 264

12.12.6     Fehler in Formhandler. 265

12.12.6.1        Fehler auf Webseite mit „Formhandler“ Plugin „No TypoScript config found“. 265

12.12.6.2        Fehler auf Webseite mit „Formhandler“ Plugin „Missing finishers!“. 266

12.12.6.3        Fehler mit „Formhandler“ Plugin „Missing finishers!....Redirect“. 266

12.12.6.4        Fehler mit „Formhandler“ Plugin „No template file found“. 267

12.12.6.5        Fehler mit „Formhandler“ Plugin „The file… is no TYPO3 language file!”. 267

12.12.6.6        Fehler mit „Formhandler“ Plugin wird ohne CSS Style angezeigt 267

12.12.6.7        Fehler im Error erscheint „The following error occured:“ obwohl deutsche Sprache. 268

Einrichtung von Gästebuch (ve_guestbook) 269

12.12.7     Was macht diese Extension?. 269

12.12.8     Installation vom Gästebuch. 269

12.12.9     Captcha im Gästebuch aktivieren. 278

12.12.10        Fehler in „ve_guestbook“. 279

12.12.10.1      Fehler in der Listenansicht vom Gästebuch wird der Wochentag in englich ausgegeben. 279

12.12.10.2      Fehler bei neuem Gästebucheintrag „Call to undefined method t3lib_div::GPvar()…“. 279

12.12.10.3      Fehler beim Formular neuer Gästebucheintrag wird anstatt der Feldnamen nur „Array“ angezeigt 280

12.12.10.4      Fehler neuer Gästebucheintrag bei klicken auf „Eintragen“ (Submit) kommt „Class ‚user_fcmail‘ not found..“. 280

12.12.10.5      Fehler Formatierung vom Gästebuch bei neuen Eintrag. 281

12.12.10.6      Fehler bei Sprachumschalt auf English bei neuen Gästebucheintrag. 282

12.13         Extension News (tt_news) 283

12.13.1     Was macht diese Extension?. 283

12.13.2     Installation von tt_news. 284

12.13.3     Update der Extension tt_news. 289

12.13.4     Anpassungen der News Extension. 289

12.13.5     Vorlage CSS Datei für tt_news. 290

12.13.6     Anzeige des Archiv Menüs verändern für Monatsgruppen- oder Jahresanzeige. 294

12.13.7     Einschränkung des Datensatztyps auf „News“. 295

12.13.8     Einstellung von tt_news für RealURL. 295

12.13.9     Fehler in News Extension (tt_news) 297

12.13.9.1        Fehler bei „Zurück zu:“ Link kommt „Keine news_id übergeben.“. 297

12.13.9.2        Fehler der Text „[mehr]“ wird nicht als Link angezeigt 297

12.13.9.3        Fehler beim Text „<_Zurück zu: New“ wird unschön angezeigt 297

12.13.9.4        Fehler Datum in der „Latest“ Ansicht der News wird mit „of“ angezeigt 297

12.13.9.5        Fehler bei Anzeige von News wird nach „Alter:“ die Einheit „days“ angezeigt 297

12.13.9.6        Fehler bei Anzeige von News wird „Displaying results…out of…“ angezeigt 297

12.13.9.7        Fehler bei Anzeige von News Categorie wird „Select a category“ angezeigt 298

12.13.9.8        Fehler bei Druckversion mit plugin.alt.print und Einzelansicht 298

12.13.9.9        Fehler bei Druckversion mit Plugin make_printlink und Einzelansicht 298

12.13.9.10      Fehler im Backend bei Bearbeitung von Newseinträgen. 298

12.13.9.11      Fehler nach Update auf TYPO3 V4.2.6 kommt bei News „Cannot re-assign $this in“. 299

12.13.9.12      Fehler im „Database Analyser“ mit  „Compare with $TCA“. 300

12.13.9.13      Fehler nach Update bei Änderungen im Template Setup Bereich. 300

12.13.9.14      Fehler in Kommentarfunktion wird Captcha nicht angenommen. 301

12.13.9.15      Fehler tt_news 3.0.1 kommt „plugin.tt_news ERROR: No HTML template found“. 301

12.13.10        Kommentare für News anlegen (comments) 301

12.13.10.1      Was mach diese Extension?. 301

12.13.10.2      Installation der Extension „comments“. 302

12.13.11        Erweiterung vom „comments“ (comments_ic) 304

12.13.11.1      Was mach diese Extension?. 304

12.13.11.2      Installation der Extension comments_ic. 304

12.13.11.3      Fehler bei CAPTCHA in der Datei „typo3conf/ext/comments/pi1/calls.tx_comments_pi1.php“. 305

12.14         Einrichtung von MOC Fileshare manager (moc_filemanager) 307

12.14.1     Was macht diese Extension?. 307

12.14.2     Installation von MOC Fileshare manager. 307

12.15         Extension DAM (dam) 312

12.15.1     Was macht diese Extension?. 312

12.15.2     Installation von dam.. 312

12.15.3     Wartungsarbeiten in DAM... 315

12.15.4     Fehler in DAM Extension. 315

12.15.4.1        Fehler unter „Media“ – „Datei“ werden die Dateien als nicht „indexiert“ angezeigt 315

12.15.4.2        Fehler auf jeder Seite kommt „Class ‚tx_dam‘ not found in…../temp_CACHED_...“. 315

12.15.4.3        Fehler im Frontend „BadFunctionCallExeption“ oder „Extension key ’dam‘ was NOT loaded!“. 316

12.15.4.4        Fehler in DAM wird das „Ordner bearbeiten“ Icon nicht angezeigt 316

12.15.4.5        Fehler bei Upload von Dateien in DAM „File size exeeded? (8.0M)“. 317

12.15.4.6        Fehler bei Upload von Dateien  in TYPO3 über „dam“ im Dateinamen keine Umlaute. 317

12.15.4.7        Fehler nach dem löschen der Tabellen „air_filemanager“ und „tx_dam“ kommt immer eine Datenbankfehler („Database Error“) Meldung im Backend. 318

12.16         Extension DAM Frontend (dam_frontend) 319

12.16.1     Was macht diese Extension?. 319

12.16.2     Installation von dam_frontend (dam_frontend_0.6.6.t3x) 319

12.16.2.1        Fehler im Frontend (FE) auf Seiten mit „DAM Frontend“ Plugin. 321

12.17         Extension MM DAM – FEFileList (mm_dam_filelist) 322

12.17.1     Was macht diese Extension?. 322

12.17.2     Installation von mm_dam_filelist (mm_dam_filelist_2.0.3.t3x) 322

12.18         Frontend Filemanager (air_filemanager) 325

12.18.1     Was macht diese Extension?. 325

12.18.2     Installation von air_filemanager (air_filemanager_0.9.27.t3x) 325

12.18.3     Sortierung Umstellen der Fileliste. 328

12.19         Einrichtung von Image Rotation (ric_rotation) 329

12.19.1     Was macht diese Extension?. 329

12.19.2     Installation von Image Rotation ohne Seiteninhaltselement 329

12.19.3     Einfügen von Image Rotation“ mit einem Seiteninhaltselement 330

12.19.3.2        Fehler nach Umzug auf neuen Server 332

12.20         Einrichtung der Image slideshow (rgslideshow) 333

12.20.1     Was  macht diese Extension?. 333

12.20.2     Installation der rgslideshow.. 333

12.20.2.1        Fehler im FE „Fehler: Kein Bild wurde im Backend ausgewählt“. 335

12.21         Einrichtung der Smooth Gallery (rgsmoothgallery) 335

12.21.1     Was  macht diese Extension?. 335

12.21.2     Installation der rgsmoothgallery. 335

12.21.2.1        Anpassung vom Design „SmoothGallery“ über CSS Dateien. 336

12.21.2.2        Einrichtung von „SmoothGallery“ mit Flexforms. 337

12.21.2.3        Fehler: Das TS wurde nicht inkludiert. Bitte im Manual nachschlagen. 338

12.22         Extension ICS AWstats (ics_awstats) 339

12.22.1     Installation der Extension „ics_awstats“. 339

12.22.2     AWstats für normale Benutzer zugänglich machen. 341

12.22.3     Aufgetreten Fehler bei „ics_awstats“. 341

12.22.3.1        Fehler „No logfile found in directory“. 341

12.22.3.2        Fehler “The logfile directory … was NOT found!”. 342

12.22.3.3        Fehler “Could not create directory… check write permission”. 342

12.22.3.4        Fehler “Fatal error: Call to undefined method template::Middle()”. 342

12.23         Extension Popup Manager (popup_manager) 343

12.23.1     Installation. 343

12.23.1.1        Fehler „Ungültiges Argument“ im MS Internet Explorer beim Öffnen der Seite. 343

12.23.1.2        Fehler mit „popup_manager“ und „formhandler“ Extension. 343

13      TYPO3 Website Übersiedlung.. 344

13.1      Scenarien einer Übersiedlung von TYPO3 Websites. 344

13.1.1       Übersiedlung der Site vom lokalen Server auf eine ISP Server. 344

13.2      Fehler nach Übersiedlung der Website.. 351

13.2.1       Fehler nach beim Bearbeiten im RTE.. 351

13.2.1.1     Fehler bei Login in das Backend kommt „No authentication methods available.“. 351

13.2.1.2     Fehler beim Aufruf der Backend Website wird diese nicht richtig angezeigt 352

13.2.1.3     Fehler im Forntend wird nur eine leere weiße Seite angezeigt 352

13.2.1.4     Fehler beim Aufruf  der Frontend Website ist das Design (CSS) zerstörrt 356

13.2.1.5     Fehler anstatt der Sprachumschaltung (Flaggen) wird die Seitentitel angezeigt 356

13.2.1.6     Fehler die Sprachumschaltung wir mit komischen Flaggensymbolen angezeigt 357

13.2.1.7     Fehler die Flaggensymbolen für die Sprachumschaltung werden nicht mehr angezeigt 358

13.2.1.8     Fehler nach Aufruf vom Install Tool kommt „Warning: Division by zero in…“ und Login ist nicht möglich. 359

13.2.1.9     Fehler im BE kommt „Fatal error: Allowed memory size…“. 359

13.2.1.10        Fehler  „Warning: Division by zero in /“home/.sites/112/site415/typo3conf/localconf.php on line 87“. 360

13.2.1.11        Fehler Umlaute und Sonderzeichen auf der neuen Website werden nicht angezeigt 361

13.2.1.12        Fehler  „Allowed memory size of … bytes exhausted tried to allocate x bytes)…“. 361

13.2.1.13        Fehler beim Aufruf von Tip-A-Friend wir nur eine leer Seite angezeigt 362

13.2.1.14        Fehler  eingefügte Bilder im RTE Text werden nicht angezeigt 362

13.2.1.15        Fehler „Warning: date(): Ist not safe to relay on the systems’s timezone settings.“. 363

14      Sicherheitseinstellungen für TYPO3. 364

14.1      TYPO3 absichern.. 364

14.1.1       TYPO3 Install Tool sichern. 364

14.1.2       Einstellungen im TYPO3 „Install Tool“. 364

14.1.3       Standard „admin“ Konto absichern. 364

14.1.4       Immer aktuelle Source Dateien für TYPO3 Core verwenden. 364

14.1.5       Passwort Sicherheit erhöhen mit „saltedpassword“. 364

14.1.6       Unnötige Extension von TYPO3 löschen. 365

14.1.7       Verwenden Sie nur geprüfte Extension. 365

14.1.8       Immer die aktuellsten Extension von TYPO3 verwenden. 365

14.1.9       Backend-Logins überwachen. 365

14.1.10     Die Konfigurationsdatei „localconf.php“ absichern. 365

14.2      Apache Webservers absichern.. 366

14.2.1       Deaktivieren Sie die Auflistung von Verzeichnissen. 366

14.2.2       Entfernen von unnötigen Paketen vom Server. 366

14.3      PHP absichern.. 366

14.4      MySQL absichern.. 366

14.4.1       Installation von phpMyAdmin als Extension. 366

14.4.1.1     Fehler „phpMyAdmin“ im Backend „Cannot start session without errors“. 367

14.4.2       MySQL Rechtekonzept mit phpMyAdmin. 367

14.4.2.1     Neuen Benutzer für „phpMyAdmin“ anlegen. 368

14.4.2.2     Neuen MySQL Benutzer für TYPO3 anlegen. 368

14.4.2.3     Neuen Datenbankbenutzer in TYPO3 unter „localconf.php“ eintragen. 371

14.4.3       phpMyAdmin – Authentication Method. 371

14.4.4       phpMyAdmin – Konfiguration mit „Cookie Authentication“. 371

15      PHP Programmierung.. 373

15.1      TYPO3 Skripte und Datenbankzugriff. 373

15.1.1       Nicht mehr unterstützter Datenbanzugriff für neu TYPO3 Versionen. 373

15.2      TYPO3 Objektzugriffe unter PHP. 373

15.2.1       Zugriff auf „uid“ oder „pid“ vom PHP.. 373

15.2.2       Zum Auslesen der pids gibt es eine eigene Funktion. 374

 

 


1    Einleitung

Ich möchte mich an diese Stelle für die Hilfe bedanken die ich durch zahlreiche TYPO3 Forums (oder durch freie Dokumentationen) bekommen habe. Dadurch wurde es erst möglich, dass ich diese Anleitung fertigstellen konnte.

 

Entschuldigen möchte ich mich, für den teilweise schlechten Stil, die Grammatik und Rechtschreibfehler die mit Sicherheit noch vorhanden sind. Meine Zeit ließ es leider nicht mehr zu alle diese Fehler vor der Veröffentlichung zu beseitigen.

 

Als Server wurde hier ein SUSE Linux Enterprise Server 11 (SLES11 SP1) verwendet.

Der Server wurde mit der Paketauswahl „Schemata“ aufgesetzt wobei für TYPO3 die Auswahl „Web- und LAMPP-Server“ notwendig ist. Diese Auswahl installiert die Pakete für Apache2, PHP5.2 und MySQL5.

 

Teilweise wird versucht, auch auf Installations- oder Konfigurationsunterschiede, für TYPO3 Installationen bei Internet Service Providern (ISP) einzugehen. Wobei auf Grund der Komplexität der unterschiedlichen Anbieter dies nur in einem generellen Zusammenhang geschehen kann.

 

Installieren Sie TYPO3 V4.5.x nach der Anleitung von Kapitel „Installation von TYPO3“. Kontrollieren Sie danach die Funktion des Backends und des Frontends.

Alle folgenden Beschreibungen beziehen sich auf die TYPO3 Version 4.5.x

Sollten Sie eine ältere oder neuere Version von TYPO3 benutzen, muss eventuell mit Abweichungen gerechnet  werden.

Diese Anleitung setzt die Grundlagen von TYPO3 voraus, d.h. das Installieren von Extensions, die Anlage einer Seite, oder einen Record von Typ „plugin einfügen“, oder was ein TS (TypoScript) Template ist. Des Weiteren wären Grundlagen von HTML und CSS von Vorteil.

 

Ich hoffen trotzdem, dass diese Anleitung manchen eine Hilfestellung bei der Einrichtung oder bei Problemstellungen von TYPO3 bieten kann, die sich für den Einsatz von TYPO3 als Website CMS System entschieden haben oder sich noch in der Evaluierungsphase befinden.

 

Diese Anleitung gibt anhand von Beispielen die Einrichtung einer Website in einzelnen Schritten wieder.  Es wird keine Gewähr auf Vollständigkeit, Richtigkeit oder Fehlerfreiheit gegeben. Die einzelnen Ausführungen können als Anregung für die Erstellung der eigenen Website verwendet werden.

 

 


1.1.      Formales

Wichtige Anweisungen oder Warnungen beginnen mit einem Block  WICHTIG .

 

Sonstige zusätzliche oder erklärende Hinweise sind mit Hinweis  gekennzeichnet.

 

Auszuführenden Befehle beginnen mit dem Prompt und danach mit dem Befehl in Fettschrift wie z.B.: „SLES11:~ # cd /srv/www/htdocs“. Ein eventueller Rückgabetext von Befehlen wir in Normalschrift angeführt. Variablen oder Platzhalter innerhalb von Befehlszeilen werden in roter fetter Schrift oder in spitzen Klammern (<..>) in nicht fetter Schrift dargestellt.

 

Beispielskripte sind immer in Rahmen eingeschlossen. Die 3 Punkte (…) in den Skripten stehen für beliebigen Code der vor oder nach dem Script stehen kann.

 

Sollten Zeilennummer vorhanden sein, so dürfen diese nicht eingegeben werden.

 

Alle Änderungen in den Beispielskripten sind in roter fetter Schrift dargestellt. Platzhalter für veränderbare Werte werden innerhalb der Beispielskripte in fetter schwarzer Schrift eingefügt.

 

Achten Sie im Zusammenhang mit Änderungen immer auf dem umgebenden Text in Normalschrift, dieser hilft die Änderungen im Script an der richtigen Stelle zu positionieren.

 

Jeder aufgetretene Fehler der während der Installationsroutinen oder währen des Arbeiten auftrat wurde erfasst. Dabei wurde zuerst der Fehler beschrieben (ggf. mit Bild) und danach werden die Ursache und die Abhilfemaßnahmen beschrieben.

 

Als Editor sollten Sie einen Verwenden, mit welchen Sie auch in UTF-8 Zeichensatz speichern können wie z.B „PSPad“. Besonders dann wenn die komplette Website auf UTF8 Zeichensatz umgestellt wurde.

Download PSPad: http://www.pspad.com/de/download.php

 

Wenn Sie die Dateien mit einem normalen Windows Editor bearbeiten und abspeichern könnte es passierren das Sie alle Sonderzeichen und Umlaute verlieren.

 

 


2    Vorlagen Website erstellen

Wenn Sie eine neue Website erstellen sollten Sie zuerst festlegen wie diese Website aussehen soll und welche Funktionen innerhalb der Website erforderlich sind.

 

Hinweis  Wenn Sie schon eine Website  haben, die Sie unter TYPO3 einsetzen wollen, so können Sie dieses Kapitel überspringen.

2.1        Website Definitionen festlegen

Es soll eine neue Website für Eine Homepage entworfen werden die unter TYPO3 läuft.

Zuerst werden Überlegungen angestellt, wie die zu entwickelnde Website aussehen soll. und welche Funktionalitäten vorhanden sein sollten.

 

Wir gehen nach folgenden Schritten vor:

-       Inhalte festlegen

-       Design festlegen (wie sollen die Inhalte dargestellt werden)

-       Funktionalitäten festlegen (mit welche Extension können diese Funktionalitäten erfüllt werden)

-       Planung der Template Struktur (HTML Templates)

 

2.2        Inhalte festlegen

Welche Inhalte sollen auf der Website dargestellt werden:

·         Impressum und Datenschutz
Informationen zum Betreiber der Website und zu den Datenschutzrichtlinien.

·         Kontaktformular
Online Kontaktformular für Besucher der Website erstellen.

·         Sitemap
Anzeige der Sitemap für alle Seiten erstellen.

·         Website Suchen
Integrierte Suche auf die Website einbauen.

·         Gästebuch
Für Websitebesucher die Möglichkeit Bemerkungen anzulegen.

·         Miteilungen (News)
Bereich zur Anzeige allgemeiner aktueller Informationen aus allen Bereichen.

·         Dokumentenverwaltung
Möglichkeit zum Upload von Dokumenten in allen möglichen Formaten und Anzeige in Kategorien ermöglichen

·         Downloadverwaltung
Möglichkeit zum Upload von Dateien und Anzeige in Kategorien.

·         Linksseite (zu anderen Websites)

 

2.3        Design festlegen

Das Design der Website sollte folgende Anforderungen erfüllen:

·         Standardauflösung von 1024x768 ohne Scrollen

·         keine Frames verwenden

·         CSS Formatierungen

·         Navigation mit Grafikbuttons vertikal am linken Rand
Die Größe dieses Bereiches über CSS fix Einstellen damit Menü bei Verkleinerung des Browser Fensters immer sichtbar bleibt

·         Oberhalb der Navigation ganz links Anzeige Website Logos

·         Im oberen Bereich neben der Navigation Anzeige eines wechselnden Banner-Bildes.
Wenn das Browser Fenster verkleinert wird soll das Banner-Bild unter das Website Logo verschoben werden.

·         Unterhalb der Logos und Banners ein so genanntes Breadcrumb Menü anzeigen.

·         Im Fußbereich immer die Copyright Meldung anzeigen.

·         Inhaltbereichsbreite je Auflösung des Browsers auf ganze Seite erweitern.
Der Text des Inhaltsbereiches. soll auch wenn das Browserfenster verkleinert wird, nicht nach unten verschoben werden (siehe CSS Formatierung).

·         Mitteilungen auf der rechten Seite in einen eigenen Bereich anzeigen.

·         Kopfleiste mit Bild und daneben Text mit Grafik der über den Inhaltsbereich geht

·         Navigationsbutton „Top“ und „Print“ in jedem Inhaltsbereich.

 

2.4        Designvorlage vorbereiten

Die Designvorlage wurde mit einem Webdesign-Programm (WYSIWYG) mit alle benötigten Grafiken erstellt. Dies sollte nicht als Empfehlung angesehen werden, denn die meisten Webdesign-Programme erzeugen einen unsauberen HTML Code der aus sehr vielen Tabellen besteht. Eine manuelle Bearbeitung des erzeugten Quellcode ist nur schwer möglich.

Der Einsatz eines Webdesign Programm kann nur dann empfohlen werden, wenn eine Formatierung aller Elemente mit CSS und automatische <div> Abschnitt Erzeugung unterstützt wird.

 

Die erstellt Designvorlage im Browser sieht folgenderweise aus („index.htm“):

 

 

Die „onmouseover“ Effekte im Navigationsbereich - immer wenn die Maus über einen Menüpunkt bewegt wird - können Sie nur sehen, wenn Sie in Ihrem Browser „JavaScript“ aktiviert haben.

 

Der erstellt HTML Quellcode in der „index.htm“ Datei der durch das Design-Programm DreamWaver generiert wurde:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<!-- DW6 -->

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Homepage</title>

<link rel="stylesheet" href="rpw.css" type="text/css" />

<style type="text/css">

<!--

.footer {color: #8080C0}

body {

       margin-left: 0px;

}

.sectiontitle {color: #333366}

a:hover {

       color: #333366;

}

a:active {

       color: #CCCCCC;

}

-->

</style>

<script language="JavaScript" type="text/JavaScript">

<!--

function MM_swapImgRestore() { //v3.0

  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;

}

 

function MM_preloadImages() { //v3.0

  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();

    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)

    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}

}

 

function MM_findObj(n, d) { //v4.01

  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];

  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);

  if(!x && d.getElementById) x=d.getElementById(n); return x;

}

 

function MM_swapImage() { //v3.0

  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)

   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}

}

//-->

</script>

</head>

<body onload="MM_preloadImages('images/banner1.JPG')">

 

<body>

<div id="masthead">

  <div id=”logo”>

  <table width="200" border="0">

    <tr>

      <td><img src="images/rpwlogo.gif" alt="logo" width="380" height="41" /></td>

      <td><a href="#" onmouseout="MM_swapImgRestore()"

onmouseover="MM_swapImage('Image5','','images/banner2.jpg',1)"><img src="images/banner2.jpg"

alt="bannerbild" name="Image1" width="380" height="41" border="0" dynsrc="images/banner1.jpg"

controls="true" start="fileopen" loop="-1" lowsrc="images/banner1.jpg" id="Image1" /></a></td>

<td><img src="images/BannerImage1.jpg" alt="" width="472" height="51" border="0" /></td>

    </tr>

  </table>

  </div>

  <div id="logo-arrow">

  </div> 

  <div id="breadCrumb">

    <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a>

  </div>

</div>

<div id="navBar">

  <div id="search">

    <form action="#">

      <label><span class="sectiontitle">Suche</span></label>

      <input name="" type="text" size="15" />

      <input name="go" type="button" value="go" />

    </form>

  </div>

  <div id="sectionLinks">

    <h3 class="sectiontitle">TYPO3 Links</h3>

    <ul>

      <li><a href="#">News</a></li>

      <li><a href="#">Dokumente</a></li>

      <li><a href="#">Download</a></li>

      <li></li>

    </ul>

  </div>

  <div id="sectionLinks">

    <h3 class="sectiontitle">Domino Links</h3>

    <ul>

      <li><a href="#">News</a></li>

      <li><a href="#">Dokumente</a></li>

      <li><a href="#">Download</a></li>

      <li></li>

    </ul>

  </div>

</div>

<!--end navBar div -->

<div id="content">

    <div class="story">

    <h3>Titelgeschichte</h3>

    <p>

     Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec molestie.

     Sed aliquam sem ut arcu. Phasellus sollicitudin. Vestibulum condimentum

     facilisis nulla. In hac habitasse platea dictumst. Nulla nonummy. Cras quis

     libero. Cras venenatis. Aliquam posuere lobortis pede. Nullam fringilla

     urna id leo. Praesent aliquet pretium erat. Praesent non odio. Pellentesque

     a magna a mauris vulputate lacinia. Aenean viverra. Class aptent taciti

     sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos.

     Aliquam lacus. Mauris magna eros, semper a, tempor et, rutrum et, tortor.

    </p>

    <p>

     Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec molestie.

     Sed aliquam sem ut arcu. Phasellus sollicitudin. Vestibulum condimentum

     facilisis nulla. In hac habitasse platea dictumst. Nulla nonummy. Cras quis

     libero. Cras venenatis. Aliquam posuere lobortis pede. Nullam fringilla

     urna id leo. Praesent aliquet pretium erat. Praesent non odio. Pellentesque

     a magna a mauris vulputate lacinia. Aenean viverra. Class aptent taciti

     sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos.

     Aliquam lacus. Mauris magna eros, semper a, tempor et, rutrum et, tortor. </p>

  </div>

</div>

<!--end content -->

<div id="siteInfo">  <a href="#" class="footer">Impressum</a> | <a href="#" class="footer">Sitemap</a> |

<a href="#" class="footer">Datenschutz</a> | <a href="#" class="footer">Kontakt</a> | &copy;2009-2010

  Real Power Work</div>

<br />

</body>

</html>

 

Die durchgestrichenen Zeilen wurden aus dem HTML Template entfernt und die der rote (fette) Text wurde zusätzlich eingefügt.

 

Danach sieht das HTML Template wie folgt aus:

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>RealPowerWork</title>

<link rel="stylesheet" href="rpw.css" type="text/css" />

</head>

 

<body>

<div id="masthead">

  <div id="logo">

    <table width="200" border="0">

      <tr>

         <td><img src="images/rowlogo_m.gif" alt="Real Power Work" width="472" height="51" /></td>

         <td><img src="images/BannerImage1.JPG" alt="" width="715" height="100" border="0" /></td>

      </tr>

    </table>

  </div>

  <div id="logo-arrow">

  </div>

  <div id="banner">

  </div> 

  <div id="breadCrumb">

    <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a>

  </div>

</div>

<div id="navBar">

  <div id="searchbox">

    <form action="#">

      <label><span class="sectiontitle">Suche</span></label>

      <input name="" type="text" size="15" />

      <input name="go" type="button" value="go" />

    </form>

  </div>

  <div id="siteLinks">

    <h3 class="sectiontitle">TYPO3 Links</h3>

    <ul>

      <li><a href="#">News</a></li>

      <li><a href="#">Dokumente</a></li>

      <li><a href="#">Download</a></li>

      <li></li>

    </ul>

  </div>

</div>

<!--end navBar div -->

 

<!--end headlines -->

<div id="lang_switch">

</div>

<div id="content">

      <h3>Titelgeschichte</h3>

      <p>

       Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec molestie.

       Sed aliquam sem ut arcu. Phasellus sollicitudin. Vestibulum condimentum

       facilisis nulla. In hac habitasse platea dictumst. Nulla nonummy. Cras quis

       libero. Cras venenatis. Aliquam posuere lobortis pede. Nullam fringilla

       urna id leo. Praesent aliquet pretium erat. Praesent non odio. Pellentesque

       a magna a mauris vulputate lacinia. Aenean viverra. Class aptent taciti

       sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos.

       Aliquam lacus. Mauris magna eros, semper a, tempor et, rutrum et, tortor.

</div>

<div id="function">

</div>

<!--end content -->

<div id="siteInfo">  <a href="#" class="footer">Impressum</a> | <a href="#" class="footer">Sitemap</a> | <a href="#" class="footer">Datenschutz</a> | <a href="#" class="footer">Kontakt</a> | &copy;2009-2010

  Real Power Work</div>

</body>

</html>

 

 

Die Original (vom DreamWaver) erzeugte CSS sieht so aus:

/***********************************************/

/* 3col_leftNav.css                             */

/* Use with template 3col_leftNav.html          */

/***********************************************/

 

/***********************************************/

/* HTML tag styles                             */

/***********************************************/

 

body{

       font-family: Arial,sans-serif;

       color: #333333;

       line-height: 1.166;

       margin: 0px;

       padding: 0px;

}

 

a{

       color: #8080C0;

       text-decoration: none;

}

 

a:link{

       color: #8080C0;

       text-decoration: none;

}

 

a:visited{

       color: #8080C0;

       text-decoration: none;

}

 

a:hover{

       color: #333366;

       text-decoration: none;

}

 

h1{

 font-family: Verdana,Arial,sans-serif;

 font-size: 120%;

 color: #334d55;

 margin: 0px;

 padding: 0px;

}

 

h2{

 font-family: Arial,sans-serif;

 font-size: 114%;

 color: #006699;

 margin: 0px;

 padding: 0px;

}

 

h3{

 font-family: Arial,sans-serif;

 font-size: 100%;

 color: #334d55;

 margin: 0px;

 padding: 0px;

}

 

h4{

 font-family: Arial,sans-serif;

 font-size: 100%;

 font-weight: normal;

 color: #333333;

 margin: 0px;

 padding: 0px;

}

 

h5{

 font-family: Verdana,Arial,sans-serif;

 font-size: 100%;

 color: #334d55;

 margin: 0px;

 padding: 0px;

}

 

ul{

 list-style-type: square;

}

 

ul ul{

 list-style-type: disc;

}

 

ul ul ul{

 list-style-type: none;

}

 

label{

 font-family: Arial,sans-serif;

 font-size: 100%;

 font-weight: bold;

 color: #334d55;

}

 

 

/***********************************************/

/* Layout Divs                                 */

/***********************************************/

 

#masthead{

       padding: 2px 0px 0px 0px;

       border-bottom: 1px solid #cccccc;

       width: 100%;

       height: auto;

}

 

#navBar{

       float: left;

       width: 18%;

       background-color: #BFBBD0;

       border-right: 1px solid #cccccc;

       border-bottom: 1px solid #cccccc;

       padding: 0px;

       margin-left: 2px;

}

 

#headlines{

       float:right;

       width: 18%;

       border-left: 1px solid #cccccc;

       border-bottom: 1px solid #cccccc;

       padding-right: 10px;

       margin-right: 5px;

}

 

#content{

       float: left;

  width: 59%;

}

 

/***********************************************/

/* Components                                  */

/***********************************************/

 

#siteName{

       margin: 0;

       padding: 0 0 0 10px;

}

 

/*************** #pageName styles **************/

 

#pageName{

       margin: 0px;

       padding: 0px 0px 0px 10px;

}

 

/************* #breadCrumb styles *************/

 

#breadCrumb{

       font-size: 80%;

       padding: 2px 0px 2px 10px;

       text-decoration: none;

}

 

 

/************** .feature styles ***************/

 

.feature{

       padding: 0px 0px 10px 10px;

       font-size: 80%;

}

 

.feature h3{

       padding: 30px 0px 5px 0px;

       text-align: center;

}

 

.feature img{

       float: left;

       padding: 10px 10px 0px 0px;

}

 

 

/************** .story styles *****************/

 

.story{

       clear: both;

       padding: 10px 0px 0px 10px;

       font-size: 80%;

}

 

.story p{

       padding: 0px 0px 10px 0px;

}

 

 

/************* #siteInfo styles ***************/

 

#siteInfo{

       clear: both;

       border: 1px solid #cccccc;

       font-size: 75%;

       color: #cccccc;

       padding: 10px 10px 10px 10px;

}

 

#siteInfo img{

       padding: 4px 4px 4px 10px;

       vertical-align: middle;

}

 

 

/************* #search styles ***************/

 

#search{

       padding: 5px 0px 5px 10px;

       border-bottom: 1px solid #cccccc;

       font-size: 90%;

}

 

#search form{

 margin: 0px;

 padding: 0px;

}

 

#search label{

       display: block;

       margin: 0px;

       padding: 0px;

}

 

 

/*********** #navBar link styles ***********/

 

#navBar ul a:link, #navBar ul a:visited {

       display: block;

}

#navBar ul {list-style: none; margin: 0; padding: 0;}

 

/* hack to fix IE/Win's broken rendering of block-level anchors in lists */

#navBar li {

       border: solid 1px #BFBBD0;

}

 

/* fix for browsers that don't need the hack */

html>body #navBar li {border-bottom: none;}

 

 

/*********** #sectionLinks styles ***********/

 

#sectionLinks{

       margin: 0px;

       padding: 0px;

       font-size: 90%;

       text-decoration: none;

}

 

#sectionLinks h3{

       padding: 10px 0px 2px 10px;

       text-decoration: none;

}

 

#sectionLinks a {

       display: block;

       padding: 2px 0px 2px 10px;

       text-decoration: none;

}

 

#sectionLinks a:hover{

       background-color: #dddddd;

       text-decoration: none;

}

 

/************** #advert styles **************/

 

#advert{

       padding: 30px 0px 10px;

}

 

#advert img{

       display: block;

}

 

.toptext {

color: #8080C0

}

 

Die angepasste CSS Datei für TYPO3 dann so:

 

/***********************************************/

/* homepage.css                                     */

/* Use with template index.html                */

/***********************************************/

 

/***********************************************/

/* HTML tag styles                             */

/***********************************************/

 

body{

                font-family: Arial,sans-serif;

                font-size: 1.2em;

                color: #333333;

                line-height: 1.166;             

                margin: 0 auto;

                padding: 0px;

                width: 900px;

                border: 1px solid #CCCCCC;

               

}

 

a{

/*             color: #8080C0; */

                color: #404090;

                text-size: 1.2em;

                text-decoration: none;

}

 

.iconlink a:link{

                color: #404090;

                font-size: 0.5em;

                text-decoration: none;

}

 

.iconlink a:visited{

  color: #404090;

                font-size: 0.5em;

                text-decoration: none;

}

 

a:link{

/*             color: #8080C0; */

                color: #404090;

                text-decoration: none;

}

 

a:visited{

/*             color: #8080C0;  */

                color: #404090;

                text-decoration: none;

}

 

a:hover{

/*             color: #333366; */

                color: #8888CC;

                text-decoration: none;

}

 

h1{

                font-family: Verdana,Arial,sans-serif;

                font-size: 120%;

                color: #000000;

                margin: 0px;

                padding: 0px;

}

 

h2{

                font-family: Arial,sans-serif;

                font-size: 114%;

                color: #000000;

                margin: 0px;

                padding: 0px;

}

 

h3{

                font-family: Arial,sans-serif;

                font-size: 100%;

                color: #334d55;

                margin: 0px;

                padding: 0px;

}

 

h4{

                font-family: Arial,sans-serif;

                font-size: 100%;

                font-weight: normal;

                color: #333333;

                margin: 0px;

                padding: 0px;

}

 

h5{

                font-family: Verdana,Arial,sans-serif;

                font-size: 100%;

                color: #334d55;

                margin: 0px;

                padding: 0px;

}

 

ul{

 list-style-type: square;

}

 

ul ul{

 list-style-type: disc;

}

 

ul ul ul{

 list-style-type: none;

}

 

label{

                font-family: Arial,sans-serif;

                font-size: 100%;

                font-weight: bold;

                color: #334d55;

}

 

 

/***********************************************/

/* Layout Divs                                 */

/***********************************************/

 

#logo{

                float: left;              

                margin-top: 12px;

                margin-left: 4px;

                margin-right: 7px;

                margin-bottom: 1px;

}

 

#logo-arrow{

                clear: left;

                float: left;

                margin-top: 5px;

                margin-left: 3px; 

}

 

#banner{

 

}

 

#masthead{

                padding: 2px 0px 0px 0px;

                border-bottom: 1px solid #cccccc;

                width: 100%;

                height: auto;

}

 

#navBar{

                float: left;

                font-size: 90%;

                width: 169px;

                background-color: #BFBBD0;

/*             border-right: 1px solid #cccccc;

                border-bottom: 1px solid #cccccc; */

                padding: 0px;

                padding-bottom: 15px;

                margin-left: 2px;

                min-height:22em;

}

 

#headlines{

                float:right;

                width: 20%;

                border-left: 1px solid #cccccc;

                border-bottom: 1px solid #cccccc;

                padding-right: 10px;

                margin-right: 4px;

}

 

#content{

                float: left;

                font-size: 74%;

                width: 78%; /* Breite für Inhalt bei Firefox, bei größer 55 wird Text nach unten verschoben */

                padding: 10px 10px 5px 10px;

}

 

#function {

                clear:both;

                text-align:right;

                margin-right: 20px;

}

 

#lang_switch {

                float: right;

                margin-right: 10px;*/

}

 

 

/*************** #pageName styles **************/

 

#pageName{

                margin: 0px;

                padding: 0px 0px 0px 10px;

}

 

/************* #breadCrumb styles *************/

 

#breadCrumb{

                font-size: 80%;

                padding: 4px 0px 4px 10px;

                text-decoration: none;

}

 

/************* #searchbox styles ***************/

 

#searchbox{

                padding: 5px 0px 5px 10px;

                border-bottom: 1px solid #cccccc;

                font-size: 90%;

}

 

#searchbox form{

                margin: 0px;

                padding: 0px;

}

 

#searchbox label{

                display: block;

                margin: 0px;

                padding: 0px;

}

 

/*********** #navBar link styles ***********/

 

#navBar ul a:link, #navBar ul a:visited {

                display: block;

                color: #101033;

        background-color: #bfbbd0;

}

 

#navBar ul.menu_list1 a:hover, #navBar ul.menu_list2 a:hover {

                text-decoration: none;

                color: #666666;

        background-color: #dddddd;

}

 

/* Formating aktives Untermenü */

#navBar ul.menu_list1 a.menu_active, #navBar ul.menu_list2 a.menu_active {

                display: block;

                color: #666666;

        background-color: #dddddd;

}

 

#navBar ul.menu_list1 {list-style: none; margin: 0; padding: 0; font-weight: 700;}

#navBar ul.menu_list2 {list-style: none; margin: 0 10px; padding: 0; font-weight: 300;}

 

 

/* hack to fix IE/Win's broken rendering of block-level anchors in lists */

#navBar li {

                border: solid 1px #BFBBD0;

}

 

/* fix for browsers that don't need the hack */

html>body #navBar li {border-bottom: none;}

 

/*********** #siteLinks styles ***********/

 

#siteLinks{

                margin: 0px;

        padding: 0px 10px; /* Für die Zentrierung von Hover und Active Farbalken */

                font-size: 90%;

                text-decoration: none;

}

 

#siteLinks a {

                display: block;

                padding: 0px;

                padding-top: 2px; /* Für den Abstand der Menüzeilen */

                text-decoration: none;

}

 

/************* #siteInfo styles ***************/

 

#siteInfo{

                clear: both;

                border-top: 1px solid #cccccc;

                font-size: 75%;

                color: #999999;

                padding: 10px;

}

 

#siteInfo img{

                padding: 4px 4px 4px 10px;

                vertical-align: middle;

}

 

/************** class styles **************/

 

.toptext{

                color: #8080C0;

}

.sitetitle{

                color: #333366;

}

.sectiontitle{

                color: #101033;

}

 

/****** class styles for screen reader ********/

.usb{

        display: block;

        position: absolute;

        left: -3000px;

        height: 0px;

        width: 0px;

}

 

 

2.4.1           HTML Vorlagedatei als TYPO3 HTML Vorlage verwenden

 

Die HTML Vorlagedatei die vom Webdesigner Programm erstellt wurde, entspricht allen Vorgaben einer modernen Website Programmierung. Die einzelnen Informationsblöcke sind klar und eindeutig durch <div> Elemente getrennt worden. Jeden dieser <div> Elemente wurde ein Name zugeordnet. Zusätzliche Formatierungen wurden durch Klassennamen festgelegt.
Die CSS Datei verwendet bei der Formatierung die Name der <div> Elemente, sowie die zugewiesenen Klassenname.

 

Damit braucht für die HTML Vorlagedatei und die CSS Datei keine weitere Anpassung für die Verwendung als TYPO3 HTML Vorlagedatei vorgenommen werden.

 

Freie HTML Vorlagedateien für TYPO3 gibt es nicht so viele wie für andere Web Content  Mangement Systeme (WCMS) aber ein Herr Gerhard Rasi hat Sammlung zusammengestellt die sich sehen lassen kann:

http://rasi.ch/index.php?id=39

 

 


2.5        Struktur der Website festlegen

Nachdem wir nun den Inhalt und das Design der Website festgelegt haben können wir die Struktur der Seite festlegen. Die Struktur einer Website ergibt sich meist schon der geplanten Navigation. Daraus ergibt sich in unserem Beispiel folgende Struktur:

 

                                   Öffentlicher Bereich                     Bemerkung

Home à                    News                                                 News aus allen Bereichen
                                   Dokumente                                      Dokumente Kategorisiert
                                   Downloads                                      Download Kategorisiert

Gästebuch                                       Anmerkungen von Besuchern
Impressum                                       Web-Impressum

Sitemap                                            Sitemap der Website
Datenschutz                                               Erklärung vom Datenschutz
Kontakt                                             Kontaktformular

 

Die Struktur der Website wurde sehr flach gehalten. Es gibt nur eine Ebene (außer der Kategorisierung). Daher kann auch das Menü sehr einfach mit einer (höchstens zwei Ebenen für die Kategorisierung) erstellt werden.

 

2.6        Funktionen der Website festlegen

Ein wesentlicher Vorteil bei der Nutzung einer Website für den Benutzer entsteht erst durch das Einbauen von Funktionen in die Website.

Als Grundfunktionen für Website gibt es meist ein Kontaktformular, Sitemaps, Gästebuch, etc. Diese verwenden oft spezielle Funktionen wie auch den Versand von Emails.

 

Unter TYPO3 werden die meisten Funktionen, welche nicht schon im Standard vorhanden sind, werden durch sogenannte TYPO3 Extension abgebildet.

In den weiteren Kapiteln wird, der Einbau der Funktionen, mit oder ohne Extension, bei der jeweiligen Rubrik erklärt und auf Fehler hingewiesen.

 

 


3    Grundlagen TYPO3 HTML Templates

Unter TYPO3 besteht die Möglichkeit alle Inhaltselemente direkt mit TypoScript zu definieren. Dabei könnten auch alle HTML Formatierungen, CSS Formatierungen und die verwendeten JavaScripts direkt unter TypoScript eingegeben werden. Dies kann aber innerhalb kurzer Zeit zu einem unübersichtlichen Code unter TypoScript führen.

 

Bei der zweiten moderneren Möglichkeit wird als Vorlage eine HTML Datei verwendet, welche die Formatierungen festlegt, in welchen die dynamischen Inhalte angezeigt werden. Zusätzlich können die CSS und JavaScript Dateien werden als Dateien in das Template eingebunden werden.

 

Da bei den meisten Internet Auftritten die Gestaltung der Website von einem externen Graphiker oder Design Team als normale HTML Seite erstellt wird, bietet sich die Verwendung dieser Dateien als Vorlagedateien für das TYPO3 HTML-Template an.

 

Hinweis  Unter TYPO3 wird der Begriff Template zweimal verwendet. Einmal für die Templates in der TYPO3 Strukturansicht und einmal  für HTML Vorlagedatei der Webseite. Um Verwirrungen zu vermeiden wird hier immer vom HTML-Template gesprochen wenn die HTML Vorlagedatei gemeint ist.

 

Einen etwas anderen Ansatz verwendet YAML. Damit wird nur die Grundstruktur der Webseite in den üblichen 2 Spalten oder 3 Spalten Formaten festgelegt. Komplexere Design sind mit diesem Ansatz nicht umzusetzen, hier geht es mehr um die einheitliche Gestaltung von Webseiten Design nach definierten Regeln. Damit können dann relativ einfach barrierefreie Websites nach gleichen Regeln erstellt werden.

 

Die TYPO3 Erweiterung db_ttv ist der aktuelle Nachfolger der vorher unter dem Namen YAML für TYPO3 bekannten TYPO3 Extension, die seit dem 1. September 2008 unter der GPL lizensiert ist. Eine komplette und neue Dokumentation finden Sie ab Anfang Januar 2009 im neuen Bereich, der eigens dafür eingerichtet wurde.

 

http://www.t3net.de/

 

YAML Dokumentation

http://www.yaml.de/de/dokumentation.html

 

3.1        Manuelle Erstellung des HTML Templates

 

Grundlegendes HTML Template für die Webseite (template_1.html):

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

  <title>TYPO3 - Demoseite</title>

  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

  <link href="styles.css" rel="stylesheet" title="Fixe Breite" type="text/css">

  <meta content="RealPowerWork" name="author">

  <meta content="Zur Demonstration der TYPO3 Funktionen" name="description">

</head>

<body>

<div id="all">

            <div id="top">

                        <div id="menu_top">

                                   <h3>

                                   <ul>

                                               <li><a href"#">Menue 1</a></li>

                                               <li><a href"#">Menue 2</a></li>

                                               <li><a href"#">Menue 3</a></li>

                                   </ul>

                                   </h3>

                        </div>

                        <div id="logo">

                                   Logo

                        </div>

            </div>

            <div id="menu_sub">

                        <ul>

                                    <li><a href"#">Submenue 1</a></li>

                                   <li><a href"#">Submenue 2</a></li>

                                   <li><a href"#">Submenue 3</a></li>

                        </ul>

            </div>

            <div id="content_area">

                        <div id="picture">

                                   Picture

                        </div>

                        <div id="content">

                                   Content

                        </div>

            </div>

            <div id="content_end">

                        <div id="copyright">

                                   Copyright &copy; 2009 Company GmbH

                        </div>

                        <div id="function">

                                   Functions

                        </div>

            </div>

            <div id="bottom">

                        <div id="search_bottom">

                                   Bottom Left

                        </div>

                        <div id="menu_bottom">

                                   Bottom Right

                        </div>

            </div>

</div>

</body>

</html>

 

Die CSS Datei wird in einen eigenen Unterverzeichnis „styles“ erstellt.

 

Die CSS Datei beinhaltet folgendes (style.css):

 

/*****************************************/

/*                                       */

/*     Stylesheet 1 fuer fixes Layout    */

/*            TYPO3 Demoseite            */

/*                                       */

/*      (c) 2005 by R.P.Wimmer           */

/*****************************************/

 

* {

      margin: 0;

      padding: 0;

}

 

body {     

      font: 76% "Trebuchet MS", sans-serif;

      color: #000;

}

 

a:link, a:visited {

      color: #000;

}

 

h1 {

      color: #fff;

      font-size: 2.2em;

      padding: 26px 0 0 30px;

}

 

h1 span {

      font-size: 0.56em;

}

 

h1 a:link, h1 a:visited {

      text-decoration: none;

      color: #fff;

}

 

.csc-header h1 {

      color: #000;

      font-size: 1.5em;

      padding-left: 0;

}

 

.quellen li {

      float:none;

      margin-left: 1.4em;

}

 

/* Bereiche (von oben nach unten) */

 

#all {

      width: 800px;

      margin: 0 auto; /* firefox: horizontal content in the middle screen */

      margin-top: 0.3em; /* margin top from the browser windows for firefox IE */

      background-color: #e2e6e9;

}

 

#top {

      margin-top: -1px; /* Bughack for IE overlaping background blocks */

      height: 100px;

      background: #D0D4D6 url(gfx/t3head_bg_fix.jpg) top center;

}

 

#colbar_top {

      float: left;

      height: 5px; /* works only for firefox, IE ignore it */

      font-size: 5px; /* Bughack for IE set height for color bar */

      width: 596px;

      margin-left: 10px;

      color: #FFF;

      background-color: #0A7;

}

 

#menu_top {

      float: left;

      line-height: 90px;

      line-height: "92px"; /* Boxhack for IE for Overlapping boxes */ 

      margin-left: 10px;

      width: 85%;

}

 

#logo {

      float: right;

      padding: 20px 20px 0 10px;

}

 

#menu_sub {

      position: relative;

      margin-top: 8px; /* must set for firefox: top position of submenu */  

      height: 2.2em; /* height of the line from sub menue */    

/*    width: 790px; must be reduced to the padding from left and right */

      padding: 0 10px; /* set the postion for the menu from left and right */

      background-color: #E2E6E9;

      border-bottom: 1px solid #C2C2B2;

}

 

#content_area {

      margin: 0 auto;

      margin-top: 10px;

      margin-bottom: 1.6em;

      background: url(gfx/t3bg_tiled.gif) -390px 0 repeat-y;

}

 

#picture {

      float: left;

      margin-left: 5px;

      width: 200px;

      padding: 0 10px; /* for Firefox begin of picture */

}

 

#content {

      float: left;

      margin-left: 5px;

      width: 500px;

      padding: 0 20px 0 0; /* for Firefox and IE begin of content DO NOT CHANGE*/

}

 

/* Holly Hack */

#content_area:after {

    content: ".";

    display: block;

    height: 0;

    clear: both;

    visibility: hidden;

}

 

#colbar_right {

      top: 120px;

      float: right;

      height: 390px;

      width: 5px;

      background-color: #0A7;

}

 

#content_end {

      clear: both;

      height: 1.6em;

      width: 800px;

      padding: 2px 10px -5px 0;  /* the -5px must be set for IE

      /*color: #fff;

      background-color: #000;*/

}

 

#copyright {

      float: left;

      font-size: 0.9em;

      margin-left: 5px;

      color: #B0B0B0;

}

 

#function {

      float: right;

      margin-right: 15px;

}

 

#bottom {

      clear: both;

      height: 1.6em;

      width: 800px;

      padding: 2px 10px -5px 0;

      /*color: #fff;

      background-color: #000;*/

      border-top: 1px solid #C2C2B2;

      background: #D0D4D6 url(gfx/t3head_bg_fix.jpg) bottom center;

}

 

#search_bottom{

      float: left;

      padding: 0 5px 0 5px;

}

 

#menu_bottom {

      float: right;

      padding: 0 5px 0 1px;

}

/* Kein IE-mac \*/

* html #content {height: 1%;}

/* Ende kein IE-mac */

 

/* Ende Holly Hack */

 

#settings {

      position: absolute;

      top: 0;

      margin: 0 auto;

      padding: 0 10px -5px 0;

      width: 800px;

      height: 1.8em;

      color: #fff;

      background-color: #000;

}

 

#settings li {

      padding: 0.2em 0.8em 0.1em 0.8em;

}

 

#settings form select {

      background-color: #000;

      color: #fff;

      font-size: 0.9em;

      height: 1.6em;

      border: none;

}

 

/* Klassen innerhalb von Bereichen */

 

.print_button {

      padding: 0 4px;

}

 

.tip_button {

      padding: 0 4px;

}

 

 

/* Formatierung für Listen als Menues */

 

#menu_top ul, #menu_sub ul, #menu_bottom ul {

      list-style: none;

}

#content ul {

      list-style: disc;

}

 

#menu_top li:hover, #menu_top li.iehover {  /* define li.iehover for IE 'hover' bug, new class generate with java script */

  background-color: #E2E6E9;

}

 

#menu_sub li:hover, #menu_sub li.iehover {  /* define li.iehover for IE 'hover' bug, new class generate with java script */

  background-color: #D0D4D6;

}

 

#menu_top li, #menu_sub ul li, #menu_bottom ul li {

      position: relative;

      float: left;

}

 

/* Star-HTML-Hack wird nur vom IE ausgeführt */

* html li li {

      width: 4em;

}

 

/* Selektor-Kommentar schließt IE4/5 für Windows und Mac aus */

#id/* */{

}

 

#menu_top li ul, #menue_sub li ul, #menu_bottom li ul {

      display: none;

      position: absolute;

      padding: 0.4em 1.2em;

      left: 0;

      background-color: #D0D4D6;

      border-bottom: 1px solid #C2C2B2;

}

 

#menu_top li > ul, #menue_sub li > ul, #menu_bottom li > ul {

      top: auto;

}

 

li:hover ul, li.iehover ul { display: block; }   /* second submenues, class .iehover defined with java script for IE bug */    

 

#menu_top li li, #menu_sub li li, , #menu_bottom li li {

      display: block;

      float: none;

      height: 1.7em;

      white-space: nowrap;

}

 

 

/* Class for Screen reader set content to hidden */

li .usb {

      display: block;

      position: absolute;

      left: -3000px;

      height: 0px;

      width: 0px;

}

 

 

/* Links spezial */

 

#menu_top a:link, #menue_top a:visited {

      display: block;

      text-decoration: none;

      padding: 0.2em 1.2em 0.1em 1.2em;

}

 

#menu_top li li a:hover {

      text-decoration: underline;

}

 

#menu_top li li a:link, #menue_top li li a:link {

      display: block;

      padding: 0.2em 0 0.2em 0;

}

 

#menu_top li:hover {

      height: 91px;

      padding: 0 0 -500px;

      background-color: #E2E6E9;

}

 

#menu_top a.active_link {

      height: 91px;

      width : "12em"; /* Boxmodelhack for IE */

      color: #f00;

      border-left: 1px solid #C2C2B2;

      border-right: 1px solid #C2C2B2;

      background-color: #E2E6E9;  

}

 

#menu_sub a:link, #menue_sub a:visited {

      display: block;

      text-decoration: none;

      padding: 0.2em 1.2em 0.1em 1.2em;

}

 

#menu_sub li:hover {

      background-color: #D0D4D6;

}

 

#menu_sub li li a:hover {

      text-decoration: underline;

}

 

#menu_sub li li a:link, #menue_sub li li a:link {

      display: block;

      padding: 0.2em 0 0.2em 0;

}

 

#menu_sub a.active_link {

      color: #f00;

}

 

#menu_bottom a:link, #menue_bottom a:visited {

      display: block;

      text-decoration: none;

      padding: 0 1.2em 0.1em 1.2em;

}

 

.menu_bottom {

      height: 7px;

      margin-top: 5px;

}

 

Einbindungsmöglichkeiten von HTML Dateien als TYPO3 HTML Template

 

Nach der Erstellung des HTML Templates, egal ob Sie dies komplett manuell, mit einem Webseiten-Designer-Programm oder mit YAML durchführen, müssen Sei die Bereiche für die dynamischen Inhalte für TYPO3 festlegen.

 

Es bestehen mehrere Möglichkeiten die HTML Vorlagedatei für die Verwendung als TYPO3 Template vorzubereiten:

 

1.    Die Kennzeichen für die dynamischen Bereiche (Marker oder Subparts) werden direkt in die HTML Datei eingefügt. Der Nachteil dieser Methode ist, dass Sie die HTML Vorlagedatei, auch mit einen Webseiten-Design-Programm das diese zulässt, nicht mehr bearbeiten oder verändern können. Weil Sie dadurch ggf. die dynamischen Bereiche wieder zerstören.

2.    Die zweite Methode benutzt eine Extension von TYPO3 die sich „Automake Template“ nennt. Dabei werden die schon vorhanden Tags einer HTML Datei wie <td>, <ol>, <li> oder auch <div id=“xxx“> von der Extension automatisch in dynamische Bereiche (Subparts) umgewandelt. Der Vorteil dieser Methode ist solange Sie keine manuellen Änderungen an der HTML Vorlagedatei vornehmen, kann diese immer noch mit der HTML Designer Programm bearbeitet werden.

3.    Die dritte Methode ist die eleganteste und neueste. Dabei wird auch wieder eine Extension von TYPO3 verwendet diese heißt „TemplateVoila“. Auch hier müssen keine Änderungen an der originalen HTML Vorlagedatei vorgenommen werden. Der Vorteil dieser Methode zeigt sich erst bei der Zuordnung der Inhalte zu den dynamischen Bereichen. Dies kann über ein grafisches Menü in TYPO3 per Drag&Drop vorgenommen werden.

 


3.2        Webseiten Höhe festlegen im MS Internet Explorer

Ältere Microsoft Internet Explorer ignorieren die Angabe „height“ vom CSS. Abhilfe kann hier nur eine Hintergrundgrafik oder eine Hidden Grafik (space.gif) bieten, welche die genaue Höhe der Webseite festlegt.

 

3.3        CSS Hover funktioniert nicht im MS Internet Explorer

Der Microsoft Internet Explorer unterhalb Version 6 unterstützt die Funktion Hover über CSS nicht vollständig. Damit Hover im IE funktioniert muss ein kleines JavaScript in die Webseite innerhalb des <head> Tags eingefügt werden.

 

JavaScript für IE damit Hover unterstützt wird für HTML Template (template_1.html):

 

  <script type="text/javascript" language="JavaScript1.2">

  <!--//--><![CDATA[//><!--

                ieHover=function() {

                               var LIs=document.getElementsByTagName("LI");

                               for (var i=0; i<LIs.length; i++) {

                                               LIs[i].onmouseover=function() {

                                                               this.className+=" iehover";

                                               }

                                               LIs[i].onmouseout=function() {

                                                               this.className=this.className.replace(new RegExp(" iehover\\b"), "");

                                               }

                               }

                }

                if (window.attachEvent) window.attachEvent("onload", ieHover);

  //--><!]]>

  </script>

 

Im CSS wird für die neue Klasse „iehover“ die Hover Funktion definiert (styles.css):

 

#menu_top li:hover, #menu_top li.iehover {  /* define li.iehover for IE 'hover' bug, new class generate with java script */

  background-color: #E2E6E9;

}

 

#menu_sub li:hover, #menu_sub li.iehover {  /* define li.iehover for IE 'hover' bug, new class generate with java script */

  background-color: #D0D4D6;

}

 

li:hover ul, li.iehover ul { display: block; } {  /* define li.iehover for IE 'hover' bug, new class generate with java script */

 

3.4        Boxmodelhack für Microsoft Internet Explorer

Der Microsoft Internet Explorer unterhalb Version 6 kann Blockdefinitionen nicht richtig verarbeiten, d.h. der Block wird immer auf den kompletten „width“ Wert erweitert. Diese kann durch Eintragungen im CSS verhindert werden.

 

Eintrag im CSS für Boxmodelhack für die Breite von Boxen:

 

...

#menue_top a.active_link {

                height: 91px;

                width : "12em"; /* Boxmodelhack for IE */

                color: #f00;

                border-left: 1px solid #C2C2B2;

                border-right: 1px solid #C2C2B2;

                background-color: #E2E6E9;         

}

 

Der „width“ Wert wurde in Anführungszeichen gesetzt, dies ist ein Trick damit dieser Wert nur vom Microsoft Internet Explorer verarbeitet wird. Netscape und Firefox ignorieren solchen Einträge.

 

Der Internetexplorer hat auch Probleme mit dem „height“ Wert im CSS. Während im Netscape und Firefox die Boxen überlappend dargestellt werden, wird im Microsoft Internet Explorer ein Spalt angezeigt.

 

Eintrag im CSS für Boxmodelhack für die Höhe von Boxen:

 

...

#menu_top {

                float: left;

                line-height: 90px;

                line-height: "92px"; /* Boxhack for IE for Overlapping boxes */        

                margin-left: 10px;

                width: 85%;         

}

 

Wieder wurde der Eintrag in Anführungszeichen gesetzt. Ein Netscape oder Firefox Browser akzeptiert nur den ersten Eintrag für „line-height“. Der Microsoft Internet Explorer dagegen verwendet den zweiten Eintrag für „line-height“ der in Anführungszeichen gesetzt wurde.

 

 

Eine Zusammenfassung aller CSS Hacks finden Sie bei „Self HTML“ auf:

http://de.selfhtml.org/index.htm


4    Vorbereitung Linux System für TYPO3

Hinweis  Wenn Sie TYPO3 Installation auf einem Server bei einem Internet Service Provider durchführen, so entnehmen Sie die Installation der Anleitung Ihres Providers. Sie können diese Kapitel daher überspringen.

 

Bevor Sie mit der Installation von TYPO3 beginnen können, müssen Sie sicherstellen das die notwendigen Serverdienste gestartet wurde. TYPO3 benötigt einen Webserver (Apache)  und einen Datenbankserver (MySQL, PostgreSQL, Oracle) und PHP. Zusätzlich benötigt TYPO3 noch spezielle PHP Module, welche auch noch vor der Installation bereitgestellt werden müssen.

 

4.1        Installation von Apache, PHP und MySQL

Wenn die Installation von Apache, PHP und MySQL nicht schon bei der Installation vom Linux Server durchgeführt wurde gehen Sie wie folgt vor.

 

1.    Öffnen Sie  „YaST

2.    Klicken Sie in der Navigation auf „Software

3.    Dann auf „Softwarepakete installieren oder entfernen

4.    Wählen Sie dann „Anzeigen“ und „Schemata“ aus. In der Schema Liste wird dann „Webserver und LAMP-Server“ markiert.



5.    Klicken Sie jetzt auf „Übernehmen“ um die Installation auszuführen.

 

Danach sollte der Apache Server, PHP und auch des MySQL Server installiert sein.

4.2        Apache und MySQL Serverdienste starten

Sie können den Apache und den MySQL Server manuell starten oder so konfigurieren das er beim Start von Linux automatisch  gestartet wird.

 

4.2.1           Apache (PHP) Serverdienst manuell starten

 

Kontrollieren Sie mit folgenden Befehl ob der Apache Server gestartet wurden:

SLES11:~ # ps aux | grep apache

root      7734  0.0  0.1   7592   884 pts/0    S+   10:24   0:00 grep apache

SLES11:~ #

 

Wenn Sie die obige Anzeige erhalten wurden der Apache Server noch nicht gestartet.

 

Starten Sie den Apache Server mit folgendem Befehl:

SLES11:~ # rcapache2 start

Starting httpd2 (prefork)                                                                                                    done

SLES11:~ #

 

Kontrollieren Sie nochmals ob der Apache Server läuft mit den „ps“ Befehl:

SLES11:~ # ps aux | grep apache

root      8004  0.1  0.8 181784  6188 ?        Ss   10:29   0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf

wwwrun    8005  0.0  0.5 181784  3824 ?        S    10:29   0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf

wwwrun    8006  0.0  0.5 181784  3824 ?        S    10:29   0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf

wwwrun    8007  0.0  0.5 181784  3824 ?        S    10:29   0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf

wwwrun    8008  0.0  0.5 181784  3824 ?        S    10:29   0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf

wwwrun    8009  0.0  0.5 181784  3824 ?        S    10:29   0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf

root      8100  0.0  0.1   7592   880 pts/0    S+   10:31   0:00 grep apache

SLES11:~ #

 

In der ersten Spalte wird der Benutzername angezeigt unter welchen der Apache Server läuft, in diesen Fall ist das „wwwrun“. Inder 8. Spalte wird durch das „S“ angezeigt das dieser Prozess als Serverdienst ausgeführt wird. In der letzten Spalte sieht man durch den Text „/usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf“ das es sich bei diesen Prozess um den Apache2 Serverdienst handelt. Jede Zeile die ausgegeben wird steht für eine Instanz des Apache Servers, d.h. der Apache Server wird hier mit 5 Instanzen ausgeführt.

 

4.2.2           Apache (PHP) Serverdienst automatisch starten

 

Wenn Sie den Apache Server mit dem Befehl „rcapache2 start“ gestartet haben, bleibt dieser nur bis zum nächsten Neustart vom Linux System aktiv, d.h. nach einem Neustart müssen Sie den Apache Server wieder manuell starten. Damit dieser automatisch mit dem Starten vom Linux System gestartet wird muss dieser zu der „Autostart“-Konfiguration hinzugefügt werden.

 

Damit der Apache Server beim nächsten Start vom Linux System automatisch ausgeführt wird geben wir folgendes ein:
SLES11:~ # insserv apache2

 

Mit dem folgenden Befehl kontrollieren Sie in welchen „Runlevel“ von Linux der Apache Server gestartet wird:

SLES11:~ # chkconfig -l apache2

apache2                   0:off  1:off  2:off  3:on   4:off  5:on   6:off

SLES11:~ #

 

Die obige Ausgabe von „3:on“ und „5;on“ besagt das der Apache Server in den Runlevel 3 und Runlevel 5 (normaler Serverbetriebsmodus) gestartet wird.

 

Hinweis  Durch den Start vom Apache Server wird auch PHP automatisch gestartet, d.h. Sie brauchen PHP nicht separat starten.

 

4.2.3           PHP5 Version auf 5.3.8 Updaten unter SLES 11

 

Dieses Update spätestens dann notwendig, wenn Sie unter SLES 11 eine TYPO3 4.6.x Version betreiben wollen.

 

Das Software Repository für das PHP5 Update unter SLES 11 finden Sie hier:
http://download.opensuse.org/repositories/server:/php/SLE_11/

 

1.    Öffnen Sie den „YaST“ – „Software“.

2.    Gehen Sie dann auf „Software Repositorys“ klicken auf die Schaltfläche „Hinzufügen“.



3.    Wählen Sie „HTTP“ aus und klicken Sie auf „Weiter“.

4.    Geben Sie die unten angezeigten Informationen für das Repository ein.



Repository-Name: SLES11 PHP5 5.3.8
Servername: download.opensuse.org
Verzeichnis auf dem Server: /repositories/server/php/SLE_11/
Port: 80

5.    Mit nochmals klicken auf „Weiter“ sollte das Software Repository einrichtet werden.

6.    Zum Update der vorhanden PHP Version gehen Sie jetzt auf „Software installieren oder löschen“. Wählen Sie den Register „Repositorys“ aus, danch selektieren Sie das neue Repository „SLES11 PHP5 5.3.8“. Klicken Sie dann auf „Systempakete“ um die vorhandene Version von PHP5 auf die neue Version von 5.3.8 umzustellen.



7.    Damit der Update gestartet wird, jetzt noch auf „Übernehmen“ klicken und die automatischen Änderung mit „Forfahren“ bestätigen.

8.    Nachdem der Update durchgeführt wurde muss der Apache Server neu gestartet werden:
rcapache2 restart

9.    Kontrollieren Sie jetzt im Backend unter „Installation“ (TYPO3 Install Tool) mit dem Menüpunkt „phpinfo()“ die vorhanden PHP5 Version:


Diese sollte jetzt die Version 5.3.8 anzeigen.

 


4.2.4           MySQL Serverdienst manuell starten

 

Kontrollieren Sie mit folgenden Befehl ob der MySQL Server gestartet wurden:

SLES11:~ # ps aux | grep mysql

root     11416  0.0  0.1   7592   884 pts/0    S+   11:34   0:00 grep mysql

SLES11:~ #

 

Wenn Sie die obige Anzeige erhalten wurden der Apache Server noch nicht gestartet.

 

Starten Sie den Apache Server mit folgendem Befehl:

SLES11:~ # rcmysql start

Starting service MySQL                                                                                                          done

SLES11:~ #

 

Kontrollieren Sie nochmals ob der MySQL Server läuft mit den „ps“ Befehl:

SLES11:~ # ps aux | grep mysql

root     11466  0.0  0.1  11152  1496 pts/0    S    11:35   0:00 /bin/sh /usr/bin/mysqld_safe --mysqld=mysqld --user=mysql --pid-file=/var/lib/mysql/mysqld.pid --socket=/var/lib/mysql/mysql.sock --datadir=/var/lib/mysql

mysql    11506  0.0  2.5 136444 19712 pts/0    Sl   11:35   0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/mysqld.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock

root     11561  0.0  0.1   7596   896 pts/0    S+   11:35   0:00 grep mysql

SLES11:~ #

 

Für die Ausgabe in den Spalten gilt das gleiche wie schon bei der Anzeige vom Apache Server.

 

4.2.5           MySQL Serverdienst automatisch starten

Wenn Sie den MySQL Server mit dem Befehl „rcmysql start“ gestartet haben, bleibt dieser nur bis zum nächsten Neustart vom Linux System aktiv, d.h. nach einem Neustart müssen Sie den MySQL Server wieder manuell starten. Damit dieser automatisch mit dem Starten vom Linux System gestartet wird muss dieser zu der „Autostart“-Konfiguration hinzugefügt werden.

 

Damit der MySQL Server beim nächsten Start vom Linux System automatisch ausgeführt wird geben wir folgendes ein:
SLES11:~ # insserv mysql

 

Mit dem folgenden Befehl kontrollieren Sie in welchen Linux „Runlevel“ der MySQL Server automatisch gestartet wird:

SLES11:~ # chkconfig -l mysql

mysql                     0:off  1:off  2:on   3:on   4:off  5:on   6:off

SLES11:~ #

 

Die obige Ausgabe von „2:on“, „3:on“ und „5:on“ besagt das der MySQL Server in den Runlevel 2, 3 und 5 (normaler Serverbetriebsmodus) gestartet wird.

 

4.3        Zusätzliche PHP Module installieren

TYPO3 benötigt für die Installation und den Betrieb noch zusätzliche Programme und PHP Module. Betriebsnotwenige Programme oder Module für TYPO3 sind „gd“ „php5-gd“, „php5-mysql“ und „zlib“.

 

4.3.1           Installation von PHP Modulen „gd“, „mysql“, „zlib“ und „curl“

 

1.    Öffnen Sie  „YaST

2.    Klicken Sie in der Navigation auf „Software

3.    Dann auf „Softwarepakete installieren oder entfernen

4.    Klicken Sie dann auf den Reiter „Suchen“ und geben Sie in das Suchfeld „gd“ ein.
Wählen Sie aus der Paketliste die Pakete „gd“ und „php5-gd“ aus.



5.    Geben Sie jetzt in das Suchfeld „mysql“ ein und klicken Sie auf „Suchen“. Wählen Sie aus der Paketliste „php5-mysql“ aus.



6.    Geben Sie jetzt in das Suchfeld „zlib“ ein und klicken Sie auf „Suchen“. Wählen Sie aus der Paketliste „php5-zlib“ aus.



7.    Geben Sie als nächstes „curl“ in das Suchfeld ein und klicken Sie auf „Suchen“. Wählen Sie aus der Paketliste „php5-curl“ aus.



8.    Klicken Sie auf „Übernehmen“ damit alle gewählten Programmpakete installiert werden.
Bestätigen Sie das Fenster „Automatische Änderungen“ mit „Fortfahren“.

9.    Starten Sie danach den Apache Server mit „rcapache2 restart“ neu.

 


4.4        SLES11 Firewall Konfigurieren

Damit Sie von einer externen Station auf dem Server über „http“ zugreifen können müssen Sie noch die Firewall konfigurieren. Zusätzlich wird hier noch „SSH“ freigeschaltet damit eine „Secure Console“ Verbindung zum Server hergestellt werden kann.

 

Gehen Sie dazu in den „YaST“ – „Benutzer und Sicherheit“ – „Firewall

 

 

 


5    Neuinstallation von TYPO3

Diese Anleitung wurde für die Installation von TYPO3 auf einen lokalen Server zusammengestellt. Wenn TYPO3 auf einen Server bei einem Internet Provider zur Verfügung gestellt wird, gehen sich nach Anleitung Ihres Internet Providers vor. Je nachdem, ob dies ein SLES11-Server mit Shell-Zugang ist, oder ein Server welcher nur FTP-Zugang bietet, können Sie gleich zu Kapitel „4.5 TYPO3 Install Tool starten“, oder zu „8 Erstellung der Website in TYPO3“ weitergehen.

5.1        Installation von TYPO3 auf Linux SLES11 Servern

Wenn Sie den Download Quelldateien (Sourcedateien) für TYPO3 nicht auf Ihrem SLES11 Server durchgeführt haben, dann müssen Sie diese Dateien zuerst auf den SLES11 Server kopieren. Am besten in das Homeverzeichnis vom „root“ Benutzer „/root/“ (unten ein Beispiel).

 

SLES11:~ # cp /mnt/hgfs/Typo3/Source-Tarball/dummy-4.5.15.tar.gz .

SLES11:~ # cp /mnt/hgfs/Typo3/Source-Tarball/introductionpackage-4.5.15.tar.gz .

SLES11:~ # cp /mnt/hgfs/Typo3/Source-Tarball/typo3_src-4.5.15.tar.gz .

 

Kopieren Sie die TYPO3-Quellcode- und Dummy-Archiv Dateien in Ihr Dokument Verzeichnis Ihres Webservers (/srv/www/htdocs/) und entpacken Sie diese dort.

Benennen Sie das Dummy-Verzeichnis mit „mv“ um. Das TYPO3-Quellcodeverzeichnis darf nicht unbenannt werden da ansonsten die symbolischen Links nicht mehr funktionieren.

 

SLES11:~ # cp typo3_src-4.5.15.tar.gz /srv/www/htdocs

SLES11:~ # cp dummy-4.5.15.tar.gz /srv/www/htdocs

SLES11:~ # cd /srv/www/htdocs

SLES11:/srv/www/htdocs # tar -xvzf typo3_src-4.5.15.tar.gz

SLES11:/srv/www/htdocs # tar -xvzf dummy-4.5.15.tar.gz

SLES11:/srv/www/htdocs # mv dummy-4.5.15 cms

 

WICHTIG  Ersetzen Sie den Namen „cms“ durch den gewünschten Namen in welchen Ihr TYPO3 Installationsverzeichnis auf dem Server sein soll.

 

Sie können danach die gepackten Pakte von TYPO3 löschen

SLES11:/srv/www/htdocs # rm typo3_src-4.5.15.tar.gz

 

5.2        Verzeichnisrechte für TYPO3 unter Linux vergeben

Um Ihre TYPO3 vor unberechtigten Änderungen zu schützen sollten Sie die Verzeichnisrechte Ihres TYPO3 Verzeichnisses folgenderweise einstellen.

 

Stellen Sie zuerst fest unter welchen Account Ihr Apache Server läuft mit:

SLES11:~ # ps aux | grep apache2

 

An erster Stelle der Rückgabe steht der Benutzer unter der der Webserver-Prozess läuft. Dies kann je nach Linux Version vom „Apache“ unterschiedlich sein.

Bei SLES 11 ist das der Benutzer „wwwrun“. Wichtig ist das „S“ in der 8. Spalten was besagt der Prozess als Serverdienst läuft.

 

WICHTIG  Alle nachfolgenden Anleitungen gehen davon aus, dass das „cms“ Ihr SLES11 Verzeichnis für TYPO3 ist. Sollte Sie ein anderes Verzeichnis verwenden müssen Sie „cms“ immer durch Ihren Verzeichnisnamen ersetzen oder ganz weglassen.

 

Ändern Sie jetzt die Gruppe und die Berechtigungen für die Verzeichnissen Ihrer TYPO3:

SLES11:~ # cd /srv/www/htdocs

SLES11:/srv/www/htdocs # chown –R wwwrun typo3_src-4.5.15/ cms/

SLES11:/srv/www/htdocs # chmod –R u+w,o-rwx typo3_src-4.5.15/ cms/

 

Damit erhält der Benutzer “wwwrun” Schreibzugriff auf den TYPO3-Quellcode und das “cms“ Verzeichnis. Zusätzlich entfernen dabei alle Rechte für die Benutzer “Other”.

 

Kontrollieren Sie danach die Verzeichnisrechte in jedem Verzeichnis mit „ls -l“.

 

5.3        Dateilinks auf das TYPO3 Source Paket setzen

WICHTIG  Die nächsten Schritte müssen Sie nur ausführen wenn Sie nicht mit dem „Dummy“ Paket von der TYPO3 V4.5.15 arbeiten oder wenn Sie ein Update von vorhanden TYPO3 Installationen vornehmen. Ansonsten weiter bei Kapitel „4.4 MySQL Datenbank kontrollieren“

 

Wenn Sie schon eine ältere Version von TYPO3 installiert haben und jetzt mit dieser Version von TYPO3 ein Update durchführen wollen müssen Sie noch ein paar Anpassungen vornehmen.

 

SLES11: cd /srv/www/htdocs/cms

SLES11:/srv/www/htdocs/cms # rm typo3_src

SLES11:/srv/www/htdocs/cms # ln –s ../typo3_src-4.5.15 typo3_src

SLES11:/srv/www/htdocs/cms # ln -s typo3_src/t3lib t3lib
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/typo3 typo3

SLES11:/srv/www/htdocs/cms # rm index.php
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/index.php index.php

Wobei das Verzeichnis „cms“ hier das TYPO3 Arbeitsverzeichnis ist, welches Sie durch Ihr TYPO3 Installationsverzeichnis ersetzen müssen.

 

Danach sollt mit „ls –l“ folgendes angezeigt werden:

 

Hinweis  Wenn Sie mehrere Websites unter TYPO3 betreiben die in unterschiedlichen Verzeichnissen liegen, so müssen Sie für jedes Verzeichnis die oben durchgeführte Einbindung vornehmen.

 

5.4        MySQL Datenbank kontrollieren

5.4.1           Passwort für den MySQL Admin (root) vergeben

 

Hinweis  Wenn sich der MySQL Server bei einem Internet Service Provider (ISP) befindet, so entnehmen Sie die Datenbank-Installation und -Konfiguration der Beschreibung Ihres Providers. Meist ist der MySQL Server schon so konfiguriert sodass Sie dieses Kapitel überspringen können.

 

WICHTIG  Nach der Installation besitzt der „root“ Benutzer vom MySQL Server kein Passwort, Sie sollten aber in einen Befehlszeilen-Terminal oder in MySQL-Konsole sofort ein Passwort für diesen vergeben. Ersetzen Sie in der Befehlszeile oben den Text „meinpasswort“ durch Ihr gewünschtes Passwort.

 

In einen Befehlszeilen-Terminalfenster:

SLES11:~ # mysqladmin password meinpasswort

 

In der MySQL-Konsole:

SLES11:~ # mysql -u root
mysql > SET PASSWORD = PASSWORD('meinpasswort');

mysql > quit

 

5.4.2           Kontrolle der Datenbank-Engines auf dem Server

 

Geben Sie folgenden Befehl ein um festzustellen, welche Datenbank-Engines auf dem Server installiert sind.

 

WICHTIG  Für TYPO3 V4.5.x und neuer benötigen Sie jetzt auch die „InnoDB“ Engine, da manche Tabellen bewußt mit der „InnoDB“ Engine angelegt werden. Beispiel sind z.B. „cach_hash“, „cache_imagesize“, „sys_historie“, etc.

 

mysql> show engines;

+------------+---------+----------------------------------------------------------------+

| Engine     | Support | Comment                                                        |

+------------+---------+----------------------------------------------------------------+

| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance         |

| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables      |

| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys     |

| BerkeleyDB | NO      | Supports transactions and page-level locking                   |

 

Als “DEFAULT” wird also hier die “MyISAM” Engine verwendet.

 

Hinweis  In der Datei „/t3lib/stddb/tables.sql“ z.B. steht bei Datenbanken, wie „cache_hash“, „cache_imagesize“, etc. zusätzlich immer der Text „ENGINE=InnoDB“, damit diese Tabellen mit der „InnoDB“ Engines angelegt werden. Alle anderen Datenbanken werden mit der im MySQL Server als Standard Engine (DEFAULT) festgelegten angelegt. Wenn Sie im TYPO3 Install Tool unter „Database Analysis“ auf „COMPARE“ klicken führt  TYPO3 einen Vergleich mit den Vorgaben Tabellen durch und fordert Sie auf ggf. die Engine durch „ALTER…“ zu ändern.

 

Anzeige der Engines und der Kollation in den Tabellen ausführen:

 

SLES11: ~ # mysql –uroot -p

mysql> use databasename

mysql> show table status;

 

5.4.2.1          Anzeige der Engines unter “phpMyAdmin”

 

Sie können mit dem “phpMyAdmin” sich die genauso die verwendeten Engines und die Kollationen anzeigen lassen.

Das folgende Bild zeigt eine Mischung zwischen “MyISAM” und “InnoDB” Engine sowie zwichen den Kollationen von “utf8_general_ci” und “latin1_swedisch_ci”.

 

 

Hinweis  Es stellt unter MySQL und unter TYPO3 kein Problem dar, wenn Tabellen Engines gemischt  werden, zwischen „MyISAM“ und „InnoDB“. Wobie TYPO3 früher normalerwise nur die Engine „MyISAM“ verwendet hat.
Beim verschiednen Charactersets oder den Kollationen sollten Sie vorsichtig sein. Hier sollten Sie sicherstellen, dass immer nur ein Characterset und eine Kollation verwendet wird. Bei neuen TYPO3 Datenbanken ist dies immer „utf-8“.

 

5.4.3           Kontrollieren Sie den eingestellten Zeichensatz des MySQL Servers

Damit Sie nicht nach der Installation von TYPO3 draufkommen, dass einige Umlaute oder Sonderzeichen nicht funktionieren, oder auch wenn Sie eine mehrsprachige TYPO3 Seite einsetzen wollen, sollten Sie den Zeichensatz des MySQL Servers kontrollieren.

 

Nach der Installation von SLES 11 mit den Schemata „Web- und LAMP-Server“ wird auch der MySQL Server installiert. Dabei wird als Vorgabe durch die Sprachauswahl „Deutsch“ der MySQL Server mit dem Characterset „latin1“ (ISO-8859-1) aufgesetzt.

Kontrollieren Sie den Characterset mit:

 

SLES11:~ # mysql -u root -p

mysql > status;

Server characterset:                  latin1

Db characterset:                       latin1

Client characterset:                   latin1

Conn. characterset:                  latin1

oder in der „/etc/my.cfg“

 

[mysqld]

character-set-server = latin1

collation-server = latin1_german1_ci               

 

WICHTIG  Ab TYPO3 Version 4.5 sind alle anderen Zeichensätze als der UTF-8 „deprecated“ (veraltet), es sollte daher bevorzugt der „utf8“ Zeichensatz verwendet werden, weil dieser mit MySQL5, PHP5.2 und Apache2 keine Probleme macht. Damit können Sie auch spätere Erweiterungen in TYPO3 ohne Probleme einsetzen.

 

Hinweis  Vorsicht bei der Konfiguration muss oft „utf8“ das andere mal wieder „utf-8“ (Bindestrich wichtig) angegeben werden. TYPO3 funktioniert größtenteils auch mit dem „latin1“ Zeichensatz ohne Probleme. In neueren TYPO3 Versionen wird aber nur mehr „utf8“ unterstützt werden.

 

5.4.3.1          Umstellung des MySQL Servers Standard Zeichensatzes auf „utf-8“

 

Wenn Sie den Standard Zeichensatz des neuen MySQL Server gleich auf „utf-8“ umstellen wollen gehen Sie wie folgt vor.

WICHTIG  Wenn schon Datenbanken und Tabelle vorhanden sind, welche mit dem alten Zeichensatz erstellt wurde (z.B. „latin1“), dann müssen Sie diese nach dieser Umstellung auch alle auf „utf-8“ konvertieren. Um solche Probleme mit schon vorhandenen Datenabnken zu vermeiden, können Sie auch nur einzelne Datanbanken im „utf-8“ Zeichensatz erstellen.

1.    Öffnen Sie Datei „/etc/my.cnf“ zur Bearbeitung:
SLES11:~ # vi /etc/my.cnf

2.    Fügen Sie jetzt folgende Zeilen in diese Datei ein (bei SLES 11 sind diese normalerweise nicht vorhanden):

...

[mysqld]

character-set-server     = utf8

default-character-set    = utf8

default-collation          = utf8_unicode_ci

 

[client]

character_set         = utf8

default-character-set = utf8

 

3.    Starten Sie jetzt den MySQL Server neu:
rcmysql restart

4.    Kontrollieren Sie den Standardzeichnensatz vom MySQL Server.

SLES11:~ # mysql -u root -p

mysql > status;

Connection id:          1

Current database:

Current user:           root@localhost

SSL:              Not in use

Current pager:          less

Using outfile:          ''

Using delimiter:  ;

Server version:         5.0.67 SUSE MySQL RPM

Protocol version: 10

Connection:       Localhost via UNIX socket

Server characterset:    utf8

Db     characterset:    utf8

Client characterset:    utf8

Conn.  characterset:    utf8

UNIX socket:            /var/lib/mysql/mysql.sock

Uptime:                 14 sec

 

Wenn überall „utf8“ angezeigt wird ist die Einstellung für den MySQL Server korrekt.

 

5.    Damit auch PHP5 nur mehr den „utf8“ Zeichensatz verwendet , müssen Sie noch zusätzlich einen Eintrag in der Datei „/etc/php5/apache2/php.ini“ folgende Zeile einfügen:

; PHP's built-in default is text/html

default_mimetype = "text/html"

;default_charset = "iso-8859-1"

default_charset = "utf-8"

 

6.    Starten Sie danach den Apache Server neu:
rcapache2 restart

7.    Kontrollieren im TYPO3 Install Tool unter „phpinfo()“ den eingestellten Zeichensatz für PHP:

 

5.4.3.2          Anzeige der Koallation (Collation) unter „phpMyAdmin“

 

Klicken Sie auf „SQL“ und geben Sie den Text „SHOW VARIABLES LIKE ‚%collation%‘“ in den Eingabebereich ein und klicken Sie auf „Go.“ Die Kollation wird für die Sortierung verwendet.

 

 

Sie sollte danach eine ähnliche Ausgabe wie diese sehen:

 

5.4.4           Manuelle Erstellung einer TYPO3 Datenbank mit „utf-8“

Wenn Sie die TYPO3 Datenbank gleich in „utf8“ Format anlegen wollen gehen Sie wie folgt vor:

 

1.    Erstellen Sie eine neue MySQL5 Datenbank mit „utf8“. Wählen Sie mit phpMyAdmin unter „Optionen“ – „Kollation“ die „utf8_general_ci“ aus.

Wenn Sie phpMyAdmin nicht installiert haben geben Sie folgendes ein um einen Datenbank anzulegen eine Datenbankbenutzer zu erstellen und die Berechtigungen zu vergeben:


SLES11:~ # mysql -u root –p
mysql > create database cms default character set utf8 collate utf8_general_ci;

mysql > create user 'typo3'@'localhost' identified by 'meinpasswort';

mysql > grant all on cms.* to 'typo3'@'localhost';

 

WICHTIG  Wenn Sie einen anderen Namen für Ihre TYPO3 Datenbank verwenden wollen so ersetzten Sie den Text „cms“ durch Ihre Datenbank. Ersetzen Sie auch den Benutzernamen „typo3“ und das Passwort „meinpasswort“ durch die von Ihnen gewünschten Benutzernamen und Passwort.

2.    Wenn Sie später dann das TYPO3 Install Tool starten (siehe Kapitel „TYPO3 Install Tool“) dann wählen Sie gleich diese Datenbanknamen, entweder „cms“ oder Ihren eingeben aus.

 

5.4.5           Konvertierung einer vorhanden Datenbank in „utf-8“

Das folgende Skript wurde für die Situation geschreiben in welchen UTF-8 kodierten Daten in Latin-1 (oder andere Zeichensätze) Tabellen gespeichert wurden. Hier ist es also notwendig eine Konvertierung dieser Daten vorzunehmen. Siehe http://wiki.typo3.org/UTF-8_support

 

Bevor Sie jetzt gleich loslegen und Ihre vorhandene TYPO3 Installation, welche noch in einen anderen Zeichensatz als „utf-8“ installiert wurde, updaten sollten Sie folgendes beachten:

 

 

WICHTIG  Als erstes führen Sie ein Backup Ihrer Datenbank aus! Wir können einfach eine MySQL Dump Datei erzeugen mit „mysqldump database –u root –p > backup_database.sql

 

Hinweis  Ersetzen Sie den Text „database“ durch Ihren Datenbanknamen.

 

1.    Erstellen Sie eine Datei mit dem Namen „db_utf8_fix.php“ im Verzeichnis „fileadmin“.

<?php

/******************************************/

// db_utf8_fix.php                        //

// Author: J. van Hemert                  //

// Date: 26-10-2011                       //

//                                        //

// Fixes encoding when utf-8-encoded data //

// is stored in tables with other (e.g.   //

// latin_swedish_ci) encoding.            //

// Will convert all columns in all tables //

// to utf8_general_ci.                    //

// Run from fileadmin folder in TYPO3     //

// installation.                          //

/******************************************/

 

                //Set to TRUE to generate an enormous amount of debug output with

                //analysis of table structure.

define('DEBUG', FALSE);

                //Set to FALSE to really convert the database

define('SIMULATE', TRUE);

 

 

require_once ('../typo3conf/localconf.php');

 

echo str_repeat(' ', 256);

?>

<html>

<head>

<style type="text/css">

  .normal {

    color: black;

  }

  .okay {

    color: green;

  }

  .label {

    color: blue;

  }

  .error {

    color: red;

  }

</style>

</head>

<body>

<?php

 

$tables = array();

$typeconv = array(

                'char' => 'binary',

                'text' => 'blob',

);

$db = mysql_connect($typo_db_host, $typo_db_username, $typo_db_password, TRUE);

if (!is_resource($db)) {

                die('Could not connect to db!: ' . mysql_error());

}

if (mysql_select_db($typo_db, $db) === FALSE) {

                die('Could not select database!: ' . mysql_error());

}

 

                // Collect table names

$sql = 'SHOW TABLES;';

$db_res = mysql_query($sql, $db);

if (!is_resource($db_res)) {

                die ('Could not get query result!: ' . mysql_error() . "\n" . $sql);

}

while ($row = mysql_fetch_array($db_res, MYSQL_NUM)) {

                if (DEBUG) {

                               var_dump($row);

                }

                $tables[] = $row[0];

}

 

                // process each table

foreach ($tables as $table) {

                echo '<div><span class="label">' . $table . ': </span><span class="normal">';

                               // Collect column information

                $sql = 'SHOW FULL COLUMNS FROM `' . $table . '`;';

                $db_res = mysql_query($sql, $db);

                if (!is_resource($db_res)) {

                               die ('Could not get table data!: ' . mysql_error() . "\n" . $sql);

                }

                $columns = array();

                while ($row = mysql_fetch_assoc($db_res)) {

                               if (DEBUG) {

                                               echo 'column: ';

                                               var_dump($row);

                               }

                               $columns[] = $row;

                }

                               // process each column

                foreach ($columns as $column) {

                               set_time_limit(60);

                               $oldtype = $column['Type'];

                               if (DEBUG) {

                                               echo 'Original: ' . $column['Type'] . "\n";

                               }

                                               // modify type into a binary equivalent

                               $column['Type'] = str_replace(array_keys($typeconv), array_values($typeconv), $column['Type']);

                               if (DEBUG) {

                                               echo 'modified: ' . $column['Type'] . "\n";

                               }

                                               // only do the magic if the type was modified

                               if ($column['Type'] != $oldtype) {

                                               $column['Null'] = (strtolower($column['Null']) == 'yes') ? 'NULL' : 'NOT NULL';

                                               $column['Default'] = (is_numeric($column['Default']))

                                                                              ? $column['Default']

                                                                              : ($column['Default'] === 'NULL') ? $column['Default'] : '\'' . $column['Default'] . '\'';

                                               $sql = 'ALTER TABLE `' . $table . '` MODIFY COLUMN `' . $column['Field'] . '` ' . $column['Type'] . ' ' . $column['Null'];

                                                               // only use default part if it's not a blob/text

                                               if (strpos($column['Type'], 'blob') === FALSE) {

                                                               $sql .= ' DEFAULT ' . $column['Default'];

                                               }

                                               $sql .= ' ' . $column['Extra'] . ';';

                                               if (DEBUG) {

                                                               echo $sql . "\n";

                                               } else {

                                                               if (!SIMULATE) {

                                                                              $db_res = mysql_query($sql, $db);

                                                                              if (!is_resource($db_res) && mysql_errno($db) != 0) {

                                                                                              echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql;

                                                                              }

                                                               }

                                               }

                                                               // modify type back to the non-binary equivalent, but add utf8 character set / collation setting

                                               $column['Type'] = str_replace(array_values($typeconv), array_keys($typeconv), $column['Type']);

                                               $sql = 'ALTER TABLE `' . $table . '` MODIFY COLUMN `' . $column['Field'] . '` ' . $column['Type'] .

                                                                  ' CHARACTER SET utf8 COLLATE utf8_general_ci ' . $column['Null'];

                                               if (strpos($column['Type'], 'text') === FALSE) {

                                                               $sql .= ' DEFAULT ' . $column['Default'];

                                               }

                                               $sql .= ' ' . $column['Extra'] . ';';

if (DEBUG) {

                                                               echo $sql . "\n";

                                               } else {

                                                               if (!SIMULATE) {

                                                                              $db_res = mysql_query($sql, $db);

                                                                              if (!is_resource($db_res) && mysql_errno($db) != 0) {

                                                                                              echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql;

                                                                              }

                                                               }

                                                               echo '.';

                                                               ob_flush();

                                                               flush();

                                               }

                               }

                }

 

                               // set defaults for table to utf8

                $sql = 'ALTER TABLE `' . $table . '` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;';

                if (DEBUG) {

                               echo $sql . "\n";

                } else {

                               if (!SIMULATE) {

                                               $db_res = mysql_query($sql, $db);

                                               if (!is_resource($db_res) && mysql_errno($db) != 0) {

                                                               echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql;

                                               }

                               }

                               echo '</span><span class="okay"> OK</span></div>';

                               ob_flush();

                               flush();

                }

 

}

                // set defaults for database to utf8

echo '<div><span class="label">DATABASE: </span><span class="normal">';

$sql = 'ALTER DATABASE `' . $typo_db . '` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;';

if (DEBUG) {

                echo $sql . "\n";

} else {

                if (!SIMULATE) {

                               $db_res = mysql_query($sql, $db);

                               if (!is_resource($db_res) && mysql_errno($db) != 0) {

                                               echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql;

                               }

                }

                echo '</span><span class="okay"> OK</span></div>';

                ob_flush();

                flush();

}

 

echo '<div>finished converting tables</div>';

mysql_close($db);

?>

</body>

</html>

 

2.    Führen Sie danach die Datei über den URL http://www.mydomain.com/fileadmin/ db_utf8_fix.php aus.

Hinweis  Ersetzen Sie den Text „www.mydomain.com“ durch Ihren Servernamen.

3.    Damit das SPHP-Skript wirklich Änderungen an der Datenbank vonimmt müssen innderhalb des Skriptes die Zeile „define('SIMULATE', TRUE);“ auf „define('SIMULATE', FALSE);“ ändern.

WICHTIG  Prüfen Sie vorher ob die Datenbank nicht schon auf „utf8“ umgewandelt worden ist, da Sie ansonsten eine Überraschung bei der Rücksicherung erleben und Umlaute und Sonderzeichen falsch dargestellt werden. Siehe Fehler doppelte UTF8 Konvertierung.

 

4.    Führen Sie jetzt nochmals einen Datenbank Dump (Sicherung aus):
mysqldump -u root -p --max_allowed_packet=10000000 --ignore-table=typo3.sys_refindex database  > typo3_latin1.sql

 

5.     Konvertieren Sie in der erstellen Dump Datei „typo3_utf8.sql“ die „Collation“ und „Charset“ Einstellungen:
sed 's/ character_set_client=latin1/character_set_client=utf8/g' typo3_latin1.sql > typo3_cv1.sql

Hinweis  Ersetzen Sie den Text „latin1” durch den Zeichensatz welcher bei Ihnen bei der Überprüfung vom Zeichensatz angezeigt wird.

danach noch:
sed 's/DEFAULT CHARSET=latin1/DEFAULT CHARSET =utf8/g' typo3_cv1.sql > typo3_cv2.sql

Hinweis  Ersetzen Sie den Text „latin1” durch den Zeichensatz welcher bei Ihnen bei der Überprüfung vom Zeichensatz angezeigt wird.

um alle Tabellen vorerst auf „MyISAM“ Engine umzustellen geben wir noch ein:
sed 's/ENGINE=InnoDB/ENGINE=MyISAM/g' typo3_cv2.sql > typo3_utf8.sql

Hinweis  Damit ersetzen wir vorerst alle Engines durch die „MyISAM“ DB Engine. Später werden einige von den Tabellen aber wieder auf die „InnoDB“ zurückgesetzt.

WICHTIG  Bei mir funktionierte das Ersetzen nicht zuverläßig, wenn das Ergebnis nicht in eine neue Datei geschrieben wurde. Daher wird hier beim „sed“ Befehl immer eine neue Datei, wie z.B. „typo3_cv1.sql“, typo3_cv2.sql“ und „typo3_utf8.sql“ erzeugt, womit die Ersetzungen sichergestellt werden.

 

6.    Stellen Sie den Standard Characterset und die Standard Kollation der Datenbank ein:
mysql -u root -p -e "ALTER DATABASE database DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci"

 

7.    Datenbank jetzt wieder zurücksichern mit:
mysql -u root -p database < typo3_utf8.sql

 

8.    Löschen aller „temp_*“ Dateien aus dem Verzeichnis „typo3conf“ mit:
SLES11: ~ # rm typo3conf/temp_*

 

9.    Danach führen Sie folgende Einstellungen in TYPO3 Install Tool durch:

$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf-8;';
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';

Hinweis  Sie können sich in einem Linux Terminal Fenster mit „locale“  anzeigen lassen  wie die Sprachparameter für die Standrdsprache korrekt lauten z.B. „de_DE.UTF8“. Mit dem Befehl „locale  -a“ können Sie sich alle Sprachparameter anziegen lassen welche Ihr System unterstützt. Ab TYPO3 4.6 werden diese Parameter nicht merh benötigt.

 

10. Kontrollieren Sie Ihre verwendeten HTML Templatedateien (*.tmpl oder *.html), ob diese im Zeichensatzt UTF8 abgespeichert wurden. Ansonsten werden Ihnen später im Frontend die Sonderzeichen (Umlaute), welche in diesen enthalten sind nicht richitg angezeigt. Das gleiche gilt auch für die in Verwendung befindliche „locallang.php“ Dateien.

11. Zum Abschluß sollten Sie jetzt noch das TYPO3 Install Tool öffnen und unter „Database Analysis“ auf „COMPARE“ klicken. Alle Datenbanke welche jetzt eine falsche Engine eingestellt haben, werden Ihnen jetzt angezeigt. Klicken Sie auf „select all“ und danach auf „Write to database“ damit diese wieder richtig gestellt werden.



12. Löschen Sie jetzt noch alle „temp_CACHED_*“ Dateien aus dem Verzeichnis „typo3conf“ und alle Cache.

13. Damit sollte die Datenbank jetzt bereit sein und nur mehr mit dem „utf-8“ Characterset arbeiten.

 

Hinweis  Wenn der Datenbank-Dump in ISO-8859-1 (Latin1) vorliegt und Sie diesen in UTF8 umwandeln wollen, damit die Sonderzeichen richtig konvertiert werden, so können Sie dazu den folgenden Befehl verwenden:

„iconv -f iso-8859-1 -t utf8 dump.sql > dump-iconv.sql“

 

5.4.6           Ausgabe im Frontend in UTF-8 erzwingen

 

Wenn die Ausgabe im Frontend von TYPO3 noch nicht das Charset utf-8 eingestellt ist, dies erfolgt normalerweise über die „localconf.php“ und die Option „[BE][forceCharset] = utf-8“, können Sie trotzdem die Ausgabe von Texten in UTF-8 mit einem TypoScript Setup eingestellen.

Schreiben Sie folgende Zeile in den Setup Bereich des Root Templates von TYPO3:

 

##############UTF8 Zeichensatz festlegen##############
config.renderCharset = utf8
config.additionalHeaders = Content-Type:text/html;charset=utf8 ###################################################

….

 

Hinweis  Die Einstellung wird nicht mehr benötigt wenn im TYPO3 Install Tool „[BE][forceCharset] = utf-8“ eingestellt ist. Auch die Eintellungen „config.metaCharset = utf-8“ ist nur mehr bei speziellen TYPO3 Installationen notwendig, wo das Rendering der Seite noch nicht in UTF-8 erfolgt aber die Ausgabe in UTF-8 erfolgen soll.

 

 

5.4.7           Datenbankreparatur ausführen

Bei manchem schwerwiegeneden Datenbankfehler hilft nur mehr eine Reparatur der MySQL Datenbank. Dies können Sie mit folgendem Befehl durchführen:

 

SLES11:~ # mysqlcheck database --auto-repair -u root -p

Enter password:

rpw.backend_layout                                 OK

rpw.be_groups                                      OK

rpw.be_sessions                                    OK

rpw.be_users                                       OK

rpw.cache_extensions                               OK

 

Hinweis  Ersetzen Sie den Text „database“ durch den Namen Ihrer Datenbank.

 

5.4.8           Fehler bei MySQL Server oder Datenbanken

 

5.4.8.1          Fehler beim Ausführen der Datei „db_utf8_fix.php“ kommt nur „Access denied“

 

Beim Aufruf der Datei mit dem URL: http://<domainname>/<typo3dir>/fileadmin/db_utf6_fix.php
kommt immer nur die Meldung „Access denied“.

Die Dateizugriffrechte wurden schon kontrolliert und stehen auf „744“. Es wurde aber auch schon versucht  „777“ auf die Datei „db_utf8_fix.php“ zu vergeben. Es kommt aber immer nur „Access denied“.

 

Abhilfe:

Der Fehler ist bei mir unter TYPO3 4.6 aufgetreten, da gibt es eine keline Änderung in er „localconf.php“ Datei ganz am Anfang steht:

<?php

if (!defined ('TYPO3_MODE')) {

       die ('Access denied.');

}

$TYPO3_CONF_VARS['SYS']['sitename'] = 'RealPowerWork Homepage';

 

Remarken Sie die ersten drei Zeilen damit Sie das externe PHP-Skrip ausführen können.

 

 

5.4.8.2          Fehler bei Login auf MySQL Server

 

SLES11:~ # mysql -u root

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

 

Abhilfe:

Geben Sie für den Login am MySQL Server auch noch die Passwort Option „-p“ an damit Sie nach dem Passwort gefragt werden.

SLES11:~ # mysql -u root -p

 

Sollte der Fehler immer noch auftreten kontrollieren Sie, ob Sie das richtige Passwort eingegeben haben.

 

 

5.4.8.3          Kontrollieren Sie den verwendeten Sortierung (Collation) der Tabellen

 

Wenn Sie eine vorhandene TYPO3 Datenbank auf die neue Version 4.5 upgedatet haben, kann es sein, dass von Ihrer alten Installation noch falsche Sortierungen vorhanden sind.

 

Wenn der Datenbankname „cms“ ist, so gehen Sie wie folgt vor um die Sortierung der Tabellen anzuzeigen.

 

mysql > use cms;

mysql > show table status;

 

| be_groups                                  | MyISAM |      10 | Dynamic    |      5 |           1534 |        7672 |  281474976710655 |         3072 |         0 |            6 | 2008-02-21 22:46:43 | 2008-02-24 17:22:18 | 2008-02-21 22:46:43 | latin1_german2_ci |     NULL |                |         |

| be_sessions                                | MyISAM |      10 | Dynamic    |      1 |             88 |         380 |  281474976710655 |         2048 |       292 |         NULL | 2008-02-21 22:46:43 | 2008-02-26 23:52:32 | NULL                | latin1_german2_ci |     NULL |                |         |

| be_users                                   | MyISAM |      10 | Dynamic    |    392 |            211 |       84388 |  281474976710655 |        16384 |      1520 |          393 | 2008-02-24 20:10:59 | 2008-02-26 23:47:22 | 2008-02-24 20:10:59 | latin1_german2_ci |     NULL |                |         |

 

Wenn sie nur deutsche Zeichen im TYPO3 verwenden und  keine mehrsprachige Website betreiben wollen, sowie als Collation „latin1_german2_ci“ verwendet wird, brauchen sie bei obiger Ausgabe keine Änderungen vornehmen.

 

Ist der MySQL auf den Zeichensatz „utf8“ die Sortierung aber noch auf „latin1_german1_ci“, so werden Sie früher oder später Probleme bekommen. Die Behebung dieses Fehler ist sehr mühsam den Sie müssten manuell die „Kollation“ in allen Tabellen und Feldern ändern. Der Zeitaufwand dafür ist enorm (ca. 2 Stunden). Wenn es sich nur um eine Testdatenbank handelt erstellen Sie die Datenbank neu und stellen Sie „Kollation“ richtig ein oder gehen Sie wie unter Kapitel „Umstellung vom Zeichensatz von <latin1> auf <utf8>“ vor.

 

5.4.8.4          Fehler nach Rücksicherung der Datenbank werden Sonderzeichen nicht angezeigt

 

Die Datenbank wurde in UTF8 Konvertiert und dann wieder zurück gesichert. Nach dem Rücksichern werden alle Texte mit Sonderzeichen (Umlaute, Apostrophe, etc) nicht richtig angezeigt.

 

Ursache:

Manchmal führt das setzen von „SET NAMES utf8;” und “SET CHARACTER SET utf8;” zur nochmaligen Konvertierung der vorhandenen Texte, welche schon im UTF8 Format sind. Dadurch gehen die Sonderzeichen in den Texten verloren. In diesen Fall entfernen Sie diese Zeilen wieder.

 

Abhilfe:

Entfernen Sie im TYPO3 Install Tool wieder den Eintrag „$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8; SET CHARACTER SET utf8;';“ und aktualsierren Sie die Website. Sollte diese zu keiner Änderung führen dann müsse Sie die Rücksicherung nochmals ausführen.

 

 

5.4.8.5          Fehler nach Umstellung von „InnoDB“ aus „MyISAM“ kommt bei „COMPARE“ immer ein Engine Fehler

 

Nach Umstellung aller Tabellen auf die Engine „MyISAM“ kommt im TYPO3 Install Tool bei „Databse Analysis“ wenn auf „COMPARE“ geklickt  wird immer folgender Fehler bei fast allen „cache_“ Tabellen angezeigt:

 

ALTER TABLE cache_hash ENGINE=InnoDB

Current value: ENGINE=MyISAM

….

 

Ursache:

In der Datei „/t3lib/stddb/tables.sql“ z.B. steht bei Datenbanken, wie „cache_hash“, „cache_imagesize“, etc. zusätzlich immer der Text „ENGINE=InnoDB“, damit diese Tabellen mit der „InnoDB“ Engines angelegt werden. Alle anderen Datenbanken werden mit der im MySQL Server als Standard Engine (DEFAULT) festgelegten angelegt.

 

Abhilfe:

Gehen Sie in das TYPO3 Install Tool auf den Menüpunkt „Database Analyser“ und führen Sie nochmals einen „COMPARE“ der Datenbank durch.

 

 

Klicken Sie danch auf die „Write to database“ Schaltfläche.

 

Wenn die obigen Zeilen auch nach einem “Write to database” bei einem nochmaligen „COMPARE“ angezeigt werden, dann liegt das Problem meist darin, dass die Datenbank „InnoDB“ Engine nicht unterstützt. Dies kann man nochmal überprüfen, indem man sich in PhpMyAdmin einloggt und die angezeigten Tabellen ansieht, man schaut ob im DropDown Feld unter Typ die „InnoDB“ vorhanden ist. Dies könnte z.B. bei manchen Internet Service Provider (wie z.B. Hosteurope, Worl4You) der Fall sein. Meißt bekommt man diese dann nur gegen Aufpreis oder Umstieg auf ein andere Web-Paket.

 

Das fehlende Update der Tabellen scheint aber keine weiteren Fehler hervorzurufen und kann somit ignoriert werden. Ich vermute, dass dies auch reine Performance Optimierung war.

 

5.4.8.6          Fehler bei „COMPARE“ kommt immer Fehler mit „ENGINE=“ (nichts)

 

Im TYPO3 Install Tool bei „Databse Analysis“ wenn auf „COMPARE“ geklickt  wird immer folgender Fehler bei fast allen Tabellen angezeigt:

 

ALTER TABLE cache_hash ENGINE=InnoDB

Current value: ENGINE=

ALTER TABLE cachingframework_cache_hash ENGINE=InnoDB;

Current value: ENGINE=

….

 

Ursache:

Dieser Fehler tritt auf wenn die Datenbank in UTF-8 ersetllt wurde aber im TYPO3 Install Tool die Option „[SYS][multiplyDBfieldSize] = 2“ eingestellt wurde.

 

Abhilfe:

Ändern Sie im TYPO3 Install Tool die Option auf „[SYS][multiplyDBfieldSize] = 1“, dann sollte der „ALTER TABLE..“ wieder normal arbeiten.

5.5        Speicherlimit PHP erhöhen

Bevor Sie das TYPO3 Install Tool starten sollten Sie sicherstellen, dass für PHP genügend Speicher zur Verfügung steht.  Bei einer SLES11 Standardinstallation von PHP,  ist der verfügbare Hauptspeicher für Skripte beschränkt auf 128 MB.

Daher ist bei SELES11 keine Änderung vom Speicherlimit mehr notwendig.

 

Hinweis  Bei älteren SLES Installation oder bei manchen Internet Service Provider (ISP), ist der Speicher aber nur auf 8 MB eingestellt. Dieser reicht aber für TYPO3 nicht aus und es kommt zu einer Fehlermeldung:

 

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 2054 bytes) in typo.tanmar.de/httpdocs/typo3/t3lib/class.t3lib_install.php on line 596

 

Um diesen Fehler zu umgehen, muss der verfügbare Speicher für PHP-Skripte über die Option „memory_limit“ in der Datei „/etc/php5/apache2/php.ini“ erhöht werden.

TYPO3 ab Version 4.x. setzt mindestens 16 MB voraus. Sie sollten das Speicherlimit aber gleich auf 64 MB erhöhen da auch dieser Wert für viele Extension zu gering ist.

 

5.5.1           Erhöhung vom Speicherlimit ohne Zugriff auf „php.ini“

 

Erstellen Sie dazu im SLES11 Verzeichnis Ihrer TYPO3 Installation (wenn nicht schon vorhanden) eine Datei mit dem Namen „.htaccess“ und fügen Sie folgende Zeile ein.

 

php_admin_value memory_limit 64M

 

 WICHTIG  Vorsicht wenn Sie eine vorhandene „_.htaccess“ umbenennen und den obigen Eintrag vornehmen. Es könnten in dieser Datei Einstellungen aktiviert sein, welche zu einer Fehlfunktion der ganzen Website führen. Sollten Sie nicht sicher sein, erstellen Sie eine neue Datei und fügen nur den oben angezeigten Eintrag ein.

 

5.6        TYPO3 Install Tool das erste Mal starten

 

WICHTIG  In der TYPO3 Version 4.x.x wurde der Zugriff auf das Install Tool geändert, d.h. man muss jetzt nicht mehr das PHP Script bearbeiten. Es reicht eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „typo3conf“ Ihrer Installation zu kopieren.

 

SLES11:~ # touch /srv/www/htdocs/cms/typo3config/ENABLE_INSTALL_TOOL

 

Starten Sie jetzt das Install Tool von TYPO3 mit der Eingabe von http://localhost/cms. Wobei „cms“ Ihr Dokument Verzeichnis ist.  Wenn Sie kein eigenes Installationsverzeichnis verwenden lassen Sie „cms“ einfach weg oder wenn Sei ein anderes Installationsverzeichnis für  TYPO3 verwenden geben Sie dieses ein.

 

Hinweis  Wenn Sie nicht direkt am Server arbeiten (mit Server Browser), müssen Sie anstelle des „localhost“ den Hostnamen und Domänennamen des TYPO3 (Apache) Servers verwenden. Dies könnte z.B. http://www.<ihredomäne>.<domainsuffix>/cms sein. Der Domainsuffix kann ein Ländercode z.B. „de“, „at“ etc. oder auch „com“, „net“, „org“, etc. sein. Je nach Installation müssen Sie das Installationsverzeichnis (hier „cms“) angeben oder auch nicht.

 

 

Die Installation erfolgt jetzt in drei Schritten welche unten in Detail erklärt werden. Sollte Fehler auftreten suchen Sie am Ende dieses Kapitels unter „Fehler im Install Tool“.

 

Hinweis  Es wird im nächstmögliche Abschnitt der Beschreibung der einzelnen Schritte von „TYPO3 Install Tool“ immer wieder versucht auf beide Varianten einer Installation, als Standalone-Server (Privat, Firmenserver) oder als Server bei einen Internet Service Provider (ISP) einzugehen. Wobei es in diesem Zusammenhang natürlich schwierig ist alle Eventualitäten oder Konfigurationen zu berücksichtigen.


5.6.1           Schritte 1-2-3 im TYPO3 Install Tool

 

  1. Klicken Sie auf „Continue“.

  2. Geben Sie den „Usernamen“ und das „Passwort“ für den MySQL Datenbankbenutzer ein. Klicken Sie auf „Continue“.

    Hinweis  Als „Host“ können Sie den Namen „localhost“ eingetragen lassen, wenn dies ein eigener Server ist. Wenn sich die TYPO3 Installation auf einen Server eines Internet Service Providers (ISP) befindet erfahren Sie den Usernamen, Passwort und Host von Ihrem Provider.



    Hinweis  Es wird empfohlen um die Sicherheit bei einer lokalen Installation des MySQL Servers zu erhöhen, dass als Datenbankbenutzer nicht der „root“ Benutzer des MySQL Servers verwendet wird, sondern ein eigener Benutzer für die TYPO3 Datenbank angelegt wird. Siehe dazu Kapitel „13.2 MySQL Absichern“.

  3. Bei „Select database“ könnten wir in das Feld „Create a new database“ einen Namen für eine neue TYPO3 Datenbank eingeben oder wir können bei „Select an EMPTY existing database“ unser vorher angelegte „cms“ Datenbank auswählen. Klicken Sie danach auf „Continue“.

    Hinweis  Der bei der Datenbankanmeldung eingegebene Benutzer muss bei der Auswahl von „Create a new database“ die Berechtigung zum Erstellen von Datenbanken besitzen.
    Bei Installationen bei einem Internet Service Provider (ISP) wird der Datenbanknamen meist schon vorgegeben.


  4. Als nächstes wird der Import der „Default TYPO3 Table“ durchgeführt. Klicken Sie dazu auf „Import database“.



  5. Nach Ausführung des Datenbank Imports erscheint das Konfigurationsfenster vom „TYPO3 Install Tool“. Hier können Sie noch spezielle Einstellungen Ihre TYPO3 Website unter „Configure TYPO3“ vornehmen.

    Außerdem haben Sie von hier auch die Möglichkeit das „Frontend“ oder das „Backend“ von TYPO3 aufzurufen.





  6. Klicken Sie zuerst auf „Change the Install Tool password here“ und geben Sie ein neues Passwort für das Install Tool ein.



    WICHTIG  Wenn Sie das Standardpasswort „joh316“ des Install Tools nicht ändern besteht eine hohe Gefahr das Ihre TYPO3 Installation kompromittiert wird.

  7. Klicken Sie jetzt auf „Configure TYPO3“.


5.6.2           „Configure TYPO3“ im Install Tool

Klicken Sie auf „Configure TYPO3“ (Recommended) damit dass TYPO3 Install Tool mit dem Auswahlmenü geladen wird. Wählen sie aus dem Menü „Basic Configuration“.

In dieser Ansicht bekommen Sie den Status der Konfiguration angezeigt es sollte hier nur grüne Häkchen angezeigt werden. Gehen Sie an das Ende dieser Seite dort finden Sie folgende Eingabefelder.

 

  1. Geben Sie einen Sitename ([SYS][sitename]) für Ihre Website ein. Dieser Name legt den TYPO3 Namen des Verzeichnisbaumes fest.

  2. Klicken Sie auf die Schaltfläche Generate random key um einen Encryption Key („[SYS][encryptionKey]) automatisch zu erstellen. Diese Zeichenfolge wird in sicherheitsrelevanten  Bereichen zur Verschlüsselung verwendet.

  3. Klicken Sie auf die Schaltfläche Update localconf.php.

 

Wählen Sie jetzt aus dem Menü  „All Configuration“ um die unten angeführten Werten zu finden können Sie mit „Suchen“ aus dem Browser Menü arbeiten.

 

  1. Wenn Sie Problem mit der dem Login im Backend über eine Proxy Server oder eine Firewall haben, sollten sie die Option „doNotCheckReferer“  ([SYS][doNotCheckReferer]) aktivieren.

  2. Mit der Option „allowGlobalInstall“ ([EXT][allowGlobalInstall]) kann die Installation, Update und Löschung von globalen Extension erlaubt werden. Ansonsten können die Extension nur als lokale Extension (../typo3conf/ext) installiert werden.

  3. Als Sicherheitsoption kann bei „warning_email_addr“ ([BE][warning_email_addr]) eine Email Adresse eingeben, welche nach 4 fehlerhaften Login Versuchen innerhalb einer Stunde, benachrichtigt werden soll.

 

Die Installation des TYPO3 Basissystems ist damit abgeschlossen. Sie können sich nun mit http://localhost/cms/typo3  das TYPO3 Backend aufrufen.

 

Geben Sie als „Username:“ admin und als „Password:“ password ein.

 WICHTIG  Ändern Sie das Passwort sofort nach dem einloggen im Backend. Es wird dafür im Backend eine Warnung angezeigt Sie brauchten dort nur auf den Text „Edit this account“ klicken. Aus der Navigation können Sie das Passwort unter User tools‑>User settings mit den Feldern „New password“ und „New password again“ geändert werden.

 

Hinweis  Sie sollten das eingegeben Passwort für den Benutzer „admin“ nicht vergessen, da dieser Benutzer der einzige Benutzer mit uneingeschränkten Rechten ist.

 


5.6.3           TYPO3 Install Tool später nochmals starten

 

Wenn Sie das TYPO3 Install Tool später für Ihre Website nochmals starten wollen gehen Sie wie folgt vor.

1.    Kopieren  oder erstellen Sie eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ im Verzeichnis „typo3conf“ Ihrer Installation.

Hinweis  Wenn Ihre TYPO3 Site bei einen Internet Service Provider (ISP) erstellt wurde führen Sie einen Upload von der Datei „ENABLE_INSTALL_TOOL“ durch. Bei manchen ISP wird der Aufruf des TYPO3 Install Tools aber nicht unterstützt.

2.    Starten Sie jetzt das Install Tool von TYPO3 mit der Eingabe von http://localhost/cms/typo3/install oder mit http://www.<ihredomäne>.<domainsuffix>/cms/typo3/install.
Wobei „cms“ Ihr Dokument Verzeichnis ist.  Wenn Sie kein eigenes Installationsverzeichnis verwenden lassen Sie „cms“ einfach weg oder wenn Sei ein anderes Installationsverzeichnis für  TYPO3 verwenden geben Sie dieses ein.

3.    Geben Sie das Passwort für das Install Tool ein.

 

5.6.4           Fehler im TYPO3 Install Tool

 

5.6.4.1          Fehler „Zugriff verweigert“ beim Aufruf vom „TYPO3 Install Tool“

 

 

Abhilfe:

Wenn Sie in der Adressleiste Ihres Browser nach Eingabe von http://localhost/cms folgendes sehen nur „http://localhost/cms/“ und nicht den kompletten Pfad sehen „http://localhost/cms/typo3/install/index.php?mode=123&step=1&password=joh316“

Dann funktionieren vorerst einmal die SymLinks auf dem Apache Server nicht. Gehen Sie wie folgt vor:

SLES11:~ # cd /etc/apache2

SLES11: /etc/apache2 # vi default-server.conf

 

Suchen Sie in der Datei die Rubrik <Directory „/srv/www/htdocs“>. In dieser gibt die Option „Options none“, ändern Sie die Option auf „Options +FollowSymLinks“ und speichern Sie die Datei wieder ab.

 



Starten Sie danach den Apache Server neu mit:

 

SLES11: /etc/apache2 # rcapache2 restart


Schließen Sie den Browser und versuchen Sie es nochmals.

 


5.6.4.2          Fehler „TYPO3 Install Tool“ lässt sich nicht starten

 

Die Datei „ENABLE_INSTALL_TOOL“ wurde wie gefordert in das Verzeichnis „typo3conf“ der TYPO3 Installation kopiert. Doch jedes Mal beim Aufruf vom „TYPO3 Install Tool“ kommt folgende Fehlermeldung.

 

 

Ursache:

Kontrollieren Sie das Datum und die Uhrzeit der Datei „ENABLE_INSTALL_TOOL“ und kontrollieren Sie das Datum und die Uhrzeit am TYPO3 Server. Wenn das Datum und die Uhrzeit mehr als eine Stunden auseinander liegen, dann erkennt dies das „TYPO3 Install Tool“ und die Datei „ENABLE_INSTALL_TOOL“ wird automatisch gelöscht.

 

Abhilfe:

Wenn Die Uhrzeit auf einen lokalen TYPO3 Server falsch ist, so berichtigen Sie auf dem Server die Uhrzeit und stellen Sie die richtige Zeitzone ein.

Wenn es sich um einen Server bei einem Provider handelt haben Sie meist keinen Einfluss auf die Uhrzeit. In diesem Fall müsste die Datei über einen FTP Client direkt am Server erstellen oder sie erstellen Sie lokal indem Sie die lokale Uhrzeit des PC verändern.

 

5.6.4.3          Fehler „TYPO3 Install Tool“ mit „The following PHP module(s) is/are missing…“

 

Beim Aufruf vom „TYPO3 Install Tool“ kommt die Fehlermeldung „TYPO3 Installation Error: The following PHP modules(s) is/are missing: gd, mysql, zlib“

 

 

Ursache:

Sie haben Ihren Linux Server nicht korrekt für die Verwendung von TYPO3 vorbereitet. TYPO3 setzt einige PHP Module voraus die Sie vor dem starten des „TYPO3 Install Tool“ installieren müssen.

 

Abhilfe:

Installieren Sie über den YaST die Programmpakete „gd“, „php5-gd“, „php5-mysql“ und „php5-zlib“.

 

5.6.4.4          Fehler bei nochmaliger Ausführung vom „TYPO3 Install Tool“ erscheint plötzlich ein Passwort Eingabefenster

 

Wenn sie das TYPO3 Install Tool geöffnet haben und länger Zeit nicht eingeben, so wird die Sitzung automatisch geschlossen und die Datei „ENABLE_INSTALL_TOOL“ gelöscht. Nach neu Erstellung der Datei „ENABLE_INSTALL_TOOL“ wir nachfolgende Meldung angezeigt.

 

 

Abhilfe:

Der Durchlauf vom „TYPO3 Install Tool“ wurde abgebrochen, d.h. es wurde auch das Standardpasswort noch nicht verändert und ist noch immer „joh316“.

 

5.6.4.5          Fehler nach „TYPO3 Install Tool“ auf der http://localhots/cms Website

 

Nachdem das TYPO3 Install  Tool durchgelaufen ist, kommt beim Aufruf der TYPO3 Website http://localhost/cms folgende Fehlermeldung.

 

 

oder in Text:

 

Uncaught TYPO3 Exception

No pages are found on the rootlevel!

 

RuntimeException thrown in file

/srv/www/htdocs/typo3_src-4.5.0/typo3/sysext/cms/tslib/class.tslib_fe.php in line 938.

 


Ursache:

Dies ist einen normale TYPO3 Meldung nachdem TYPO3 neu installiert wurde und noch keine Website oder Templates installiert sind.

 

Abhilfe:

Im Moment braucht uns diese Fehlermeldung nicht stören, da in den nachfolgenden Kapiteln noch die Root Websites, und das Root-Template für TYPO3 erstellt werden.

 

5.6.4.6          Fehler nach „TYPO3 Install Tool“ auf der TYPO3 Website über Hostnamen

 

Nachdem das TYPO3 Install  Tool durchgelaufen ist, kommt beim Aufruf der TYPO3 Website http://sles11/cms folgende Fehlermeldung. Wobei „SLES11“ der lokale Hostname des Servers ist.

 

 

Ursache:

Dies ist einen normale TYPO3 Meldung nachdem TYPO3 neu installiert wurde und noch keine Website oder Templates installiert sind.

 

Abhilfe:

Im Moment braucht uns diese Fehlermeldung nicht stören, da in den nachfolgenden Kapiteln noch die Root Websites, und das Root-Template für TYPO3 erstellt werden.

 


6    Update Installation TYPO3

Wenn Sie einen vorhandene Installation von TYPO3 auf einen anderen Server umsiedeln wollen, egal ob sich dabei um einen lokalen Server oder einen Server bei einen Internet Service Provider (ISP) handelt, so führen Sie am besten einen TYPO3 Update Installation durch. Wenn Sie eine vorhandene TYPO3 Installation von einer vorherigen Version  von TYPO3 auf eine aktuelle Version von TYPO3 updaten wollen, führen Sie eine TYPO3 Update Installation aus.

 

WICHTIG  Bei ältern Verisonen als TYPO3 4.1 müssen Sie zuerst auf eine aktuelle Version von 4.1.x Updaten, erst danach können Sie einen Update auf die Version 4.5.x durchführen.

 

Hinweis  Sie sollte eine Update Installation nicht auf eine Produktiv Server der im Internet steht ausführen, sondern eine Sicherung vom Produktiv System durchführen, und die Installation dann auf einem lokalen Standalone Server durchführen. Dadurch verhindern Sie, dass bei Fehlern des Updates der Produktiv Server Offline geht und Sie haben außerdem Zeit die Update Installation ausgiebig zu testen. Wenn die Testinstallation einwandfrei Funktioniert führen von dieser wieder eine Datensicherung durch und können dann damit den Produktiv Server updaten.

 

WICHTIG  Ein Update auf die neueste TYPO3 4.6 sollten Sie mit Vorsicht durchführen. Voraussetzung ist zuerst einmal  die PHP 5.3 Version. Außerdem wurden in dieser Version alle schon als „deprecated“ (veraltet) angekündigten Core Änderungen eingebaut. D.h. es gibt z.B die Variable „GPvar“ nicht mehr diese soll jetzt mit „_GP“ aufgerufen werden. In diesem Zusammenhang funktionieren Extensions wie „ve_guestbook“ nicht mehr.

6.1        Ablauf einer TYPO3 Update Installation

Um eine vorhanden TYPO3 Installation auf einen anderen Server zu übersiedeln oder um auf eine neue Version upzudaten gehen Sie wie folgt vor.

 

1.    Sichern Sie zuerst von Ihrer alten Datendateien Ihrer TYPO3 Installation. Dabei handelt es sich um folgende Verzeichnisse oder Dateien unter dem Installationsverzeichnis von TYPO3:
fileadmin“          à komplett sichern
typo3config“    à komplett sichern, da sich hier auch die Dateien der installierten                                             Extension befinden
uploads“           à komplett sichern


Hinweis  Bei einer TYPO3 Installation welche sich auf einem Server eines Internet Service Providers (ISP) befindet, verwenden Sie einen FTP-Client um die Dateien von der alten Installation zu sichern.

2.    Sicherung der alten TYPO3 Datenbank durchführen. Genaue Anleitung im Kapitel „6.2 Update der TYPO3 MySQL Datenbank“.

3.    Neues Installationsverzeichnis für TYPO3 Installation anlegen:

SLES11:~ # mkdir /srv/www/htdocs/newcms

Hinweis  Bei TYPO3 Installation welche sich auf einem Server eines Internet Service Providers (ISP) befindet, wird meist nur eine Installation einer TYPO3 Instanz zugelassen. D.h. wenn Sie in der Paketauswahl des Providers auf die neue TYPO3 Version umstellen, werden alle Installationen auf die neue TYPO3 Source Paket umgestellt.

WICHTIG  Damit Sie keine böse Überraschung bei der Umstellung erleben sollten Sie auf alle Fälle vor der Umstellung auf einen neue TYPO3 Version bei einem ISP, ihre vorhandene Installation wie in den Punkten 1-2 angeführt durchführen.

4.    Kopieren Sie alle Dateien einen TYPO3 Dummy Paketes in das neue TYPO3 Installationsverzeichnis.

SLES11:~ # cp dummy-4.5.15.tar.gz /srv/www/htdocs
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # tar xzf dummy-4.5.15.tar.gz
SLES11:/srv/www/htdocs # cp -R dummy-4.5.15 newcms

WICHTIG  Bei einer TYPO3 Installation, welche sich auf einem Server eines Internet Service Providers (ISP) befindet, brauchen Sie dies nicht durchführen. Die Dateien sollten schon bei der TYPO3 Paketauswahl des Providers installiert werden.

5.    Kopieren Sie die TYPO3 Datendateien aus der Sicherung in das neue TYPO3 Installationsverzeichnis:
fileadmin“          à komplett zurücksichern und überschreiben.

WICHTIG  Bevor Sie jetzt das Verzeichnis „typo3conf“ zurücksichern, sollten Sie die vorhandene Datei „localconf.php“ im neuen TYPO3 Installationsverzeichnis umbenennen oder sichern.

typo3config“    à komplett zurücksichern und überschreiben.
uploads“           à komplett zurücksichern und überschreiben.

6.    Vergeben Sie die Berechtigungen auf die neu kopierten Dateien

SLES11:~ # cd srv/www/htdocs/newcms
SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp fileadmin
SLES11:/srv/www/htdocs/newcms # chmod -R 770 fileadmin
SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp typo3conf
SLES11:/srv/www/htdocs/newcms # chmod -R 770 typo3conf
SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp uploads
SLES11:/srv/www/htdocs/newcms # chmod -R 770 uploads

Hinweis  Es wurden hier die Berechtigungen mit „770“ und auch eine Gruppe „ftp“ definiert damit später auch mit einem FTP Client eine Bearbeitung möglich ist.

7.    Entfernen Sie die alten Cache Dateien aus dem „typo3config“ Verzeichnis.

SLES11:/srv/www/htdocs # rm temp_CACHED_*

3.    Neue MySQL Datenbank für die neue lokale TYPO3 Installation erstellen.

SLES11:~ # mysql -u root –p
mysql > create database newcms default character set utf8 collate utf8_general_ci;

mysql > create user 'newtypo3'@'localhost' identified by 'meinpasswort';

mysql > grant all on newcms.* to 'newtypo3'@'localhost';

 

WICHTIG  Wenn Sie einen anderen Namen für Ihre TYPO3 Datenbank verwenden wollen so ersetzten Sie den Text „cms“ durch Ihre Datenbank. Ersetzen Sie auch den Benutzernamen „newtypo3“ und das Passwort „meinpasswort“ durch die von Ihnen gewünschten Benutzernamen und Passwort.

Hinweis  Bei TYPO3 Installation welche sich auf einem Server eines Internet Service Providers (ISP) befindet, wird die MySQL Datenbank meist über eine Web-Konsole des Providers erstellt.

8.    Jetzt müssen noch die Datei „localconf.php“ im Verzeichnis „typo3conf“ auf die richtigen Datenbankeinstellungen der neuen TYPO3 Installation ändern. Ersetzen Sie aus der im Schritt 4. umbenannten oder gesicherten „localconf.php“  folgende Abschnitte der nun aktuellen „localconf.php“:

$TYPO3_CONF_VARS['SYS']['compat_version'] = 4.5; //abhängig von der TYPO3-Version

$typo_db_username = newtypo3;
$typo_db_password = meinpasswort;
$typo_db_host = neuerHost;
$typo_db = newcms;

 

Hinweis  Ändern Sie „neuerHost“ auf den neuen Hostnamen wenn Sie die TYPO3 Installation auf einen anderen Server übersiedelt haben.

9.    Der zweite Bereich in der „localconf.php“ welcher bei einer Umsiedlung auf einen anderen Server eventuell geändert werden muss, sind die Einstellungen für das installierte Grafikprogramm. Je nach installiertem Grafikprogramm, müssen dort Anpassungen vorgenommen werden.

$TYPO3_CONF_VARS['GFX']['im_path'] = '/usr/local/bin/'; // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_path_lzw'] = '/usr/local/bin/';     // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im4';

$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite';

$TYPO3_CONF_VARS['GFX']['im_imvMaskState'] = 0;

 

Hinweis  Bei TYPO3 Installation welche sich auf einem Server eines Internet Service Providers (ISP) befindet, entnehmen Sie die Einstellungen der „localconf.php“ Datei welche nach der Paketauswahl beim Provider erstellt wird.

 

10. Rücksicherung der alten MySQL Datenbank in die neu MySQL Datenbank durchführen. Die Genaue Anleitung dazu im Kapitel „6.2 Update der TYPO3 MySQL Datenbank“.

11. Starten Sie jetzt das TYPO3 Install Tool wie in Kapitel „5.7.3 TYPO3 Install Tool später nochmals starten“ erklärt.

TYPO3 Install Tool > Update Wizard starten, den Anweisungen auf dem Bildschirm folgen.



Hinweis  Wenn Sie am Ende folgende Anzeige sehen, wurden alle Schritte des Update Wizard korrekt ausgeführt und Sie können gleich auf den Link „COMPARE DATABASE“ klicken um den Datenbank-Update auszuführen.

 

12. TYPO3 Install Tool > Database Analyzer > Update required tables COMPARE. In diesem Schritt werden die notwendigen Tabellen/Felder der vorhandenen Datenbank hinzugefügt. Gleichzeitig bereinigen Sie Ihre Datenbank von den nicht benötigten Inhalten. Markieren Sie immer alle vorgeschlagenen Änderungen und klicken sie auf die Schaltfläche, solange bis keine Fehler mehr angezeigt werden.

13. Starten Sie jetzt das TYPO3 Backend und loggen Sie sich ein. Gehen Sie dann in der Navigation auf DB Überprüfung > Globalen Referenz-Index prüfen und aktualisieren > Referenzindex überprüfen.
Läuft alles tadellos, wird ein Text Ähnlich „318 records from 30 tables were checked/updated.“ angezeigt. 

14. Wählen Sie im Backend jetzt „Extension Manager“ und führen Sie noch ein Update vom „Translation handling“ aus.



15. Danach klicken Sie auf „Update from Repository“ um alle aktuellen Sprachdateien für die gewählten Sprachen zu laden.

16. Kontrollieren Sie jetzt noch ob die „Statischen Templates“ unter „Templates“ auf Ihrem Root  Template unter „Vollständigen Template-Datensatz bearbeiten“ im Reiter „Enthält“ richtig eingebunden wurden.



17. Ihre TYPO3 Installation ist nun upgedatet. Neues Backend-Design: die Extension "TYPO3 skin" via EXT-Manager installieren.

18. Sie können jetzt noch im Backend von TYPO3 ein Update der installierten Extension durchführen. Siehe Kapitel „12.3 Update von einer installierten Extension“ wie Sie dies durchführen.

 

6.2        Update der TYPO3 MySQL Datenbank

Wenn Sie vor dem Problem stehen, eine schon vorhanden alte TYPO3 Installation, welche eine alte MySQL Datenbank verwendet z.B. V3.x.x oder V4.x.x auf eine aktuellen Datenbankversion upzudaten, so gehen Sie wie folgt vor. Oder, Sie können dieses Kapitel auch verwenden, wenn eine alte TYPO3 Datenbank einen falschen Zeichensatz wie z.B. „latin1 “ verwendet und Sie auf den Zeichensatz „utf8“ umstellen wollen.

 


6.2.1.1          Umstellung vom Zeichensatz von <latin1> auf <utf8>

 

Spätestens, wenn Probleme mit der Darstellung von Umlauten auftauchen oder Mehrsprachigkeit erforderlich ist, bietet sich das „utf8“ Format für die Datenbank an. Das „utf8“ Format ermöglicht eine globale Zeichenkodierung im Internet. Bei allen neueren TYPO3 Versionen ab V4.5 sollte immer schon der „utf8“ Zeichensatz verwendet werden.

 

1.    Erstellen Sie eine neue MySQL5 Datenbank mit „utf8“. Wählen Sie mit phpMyAdmin unter „Optionen“ – „Kollation“ die „utf8_general_ci“ aus.

2.    Führen Sie eine Datensicherung der alten TYPO3 Datenbank durch. Bei einen lokalen Server mit „mysqldump –u root –p cms > cms-latin1.sql“
oder bei einen gehosteten Server mit „mysqldumper“ diesen könne Sie von der Website http://www.mysqldumper.de downloaden und entpacken.
Kopieren Sie das Programm dann per FTP auf Ihren Webserver in zwei neue Verzeichnisse  auf dem Webserver eines für die alte Datenbank. „mysqldumperALT“ und eines für die neue Datenbank „mysqldumperNEU“.

3.    Konfigurieren die beiden „mysqldumper“ Programm mit den Zugangsdaten für Ihren MySQL Datenbank. Wählen Sie bei „mysqldumperALT“ die alten MySQL Datenbank und bei „mysqldumperNEU“ die neue MySQL Datenbank aus. Nähere Details zur Einrichtung vom „mysqldumper“ entnehmen Sie aus dem Verzeichnis „ReadMe“ und der Datei „install_deutsch.txt“.

4.    Holen Sie sich die Backupdatei auf Ihren lokalen PC. Machen Sie eine Kopie davon und bewahren Sie diese an einen sicheren Ort auf. Diese könne Sie dann verwenden wenn bei der Umstellung etwas schief gehen sollte.

5.    Entpacken Sie die Datei mit dem „7-zip“ Programm: http://www.7-zip.org/download.html
Bearbeiten Sie die entpackte Datei mit einem Programm wie TextPad (nicht Microsoft Word oder Editor!). Download von: http://www.textpad.com/download/index.html
Speichern Sie die Datei dann im „utf8“ Format ab.

Hinweis  Sehen Sie sich im Kapitel „5.4.5 Konvertierung einer vorhanden Datenbank in „utf-8“ an welche Texte ersetzt werden müssen. Die Texte finden Sie bei den „sed“ Befehlen. Ersetzen dann immer den ersten Texteil nach dem `s/ bis zum nächsten / durch den Textteil nach dem / bis zum /g`

6.    Dieses Datei neu GZ-komprimieren mit dem Programm „7-zip‘“, mit „mysqldumperNEU“ in die NEUE MySQL Datenbank importieren. Dies erfolgt im „mysqldumper“ mit „Datei hochladen“ und danach mit „Wiederherstellen“.

7.    Nun braucht man nur noch zu “switchen”. d.h. TYPO3 zu sagen, dass es die neue Datenbank verwenden soll (die alte Datenbank kann man im Anschluss aufheben oder – nach entsprechender Prüfung der Funktionsfähigkeit der neuen Datenbank - löschen). Switchen der Datenbank:
Dazu holte man sich „/typo3conf/localconf.php“ vom Server auf den eigenen Rechner macht eine Kopie und passt in dieser den Zugriff auf die Datenbank an:


$typo_db_username = neuerWert;
$typo_db_password = neuerWert;
$typo_db_host = neuerWert;
$TYPO3_CONF_VARS['SYS']['compat_version'] = 4.5; //abhängig von der TYPO3-Version
$typo_db = neuerWert;


Hinweis  Wenn man TYPO3 auf utf8 umschaltet, so kann der unangenehme Effekt auftreten, dass die TypoScripts (Constants, Setup) bzgl. Umlaute korrumpiert werden. Deshalb ist es ratsam, sich den Code vor dem Umstellen aus der alten Installation rauskopieren, um ihn im Anschluss wieder herstellen zu können.

8.    Bevor man die „localconf.php“ mit den neuen Datenbankwerten auf den Server lädt, muss man noch via phpMyAdmin alle Tabellen leeren (nicht löschen!), die „cache“ im Namen haben (cache_extensions, cache_hash, cache_imagesizes,…), das sind derzeit 7 Stück. Macht man das nicht, so meldet TYPO3 nach dem Upload der neuen localconf.php freudig: „No Template found!

9.    Jetzt ist noch TYPO3 selbst anzupassen.
Via TYPO3 Install Tool erschließt man den Bereich „All Configuration“ und trägt ein:

[BE][forceCharset] = utf-8

Hinweis  Durch diesen Eintrag werden bei den neuen TYPO3 Versionen auch gleich folgende Einstellungen im Root Template durchgeführt und müssen daher nicht mehr manuell im Setup Bereich eingetragen werden:
config.renderCharset = utf-8
config.additionalHeaders = Content-Type:text/html;charset=utf-8

WICHTIG  Bei den neuen TYPO3 Versionen sind die Einträge in der „[SYS][setDBinit]=“ wie z.B. „SET NAMES utf8;” “SET CHARACTER SET utf8;” etc. nicht mehr notwendig, da die DBAL Extensions jetzt den Zugriff auf die Datenbanken durchführt. Sollte diese Einträge vorhanden sein, kann es zur nochmaligen Konvertierung der vorhandenen Texte, welche schon im UTF8 Format sind kommen. Dadurch gehen die Sonderzeichen in den Texten verloren. In diesem Fall entfernen Sie diese Zeilen wieder.

10. WICHTIG  Dieser Eintrag ist nur notwendig wenn Ihre Datenbank noch nicht den UTF-8 Zeichesatz besitzt, Sie aber eine UTF-8 Ausgabe erzeugen wollen:
[SYS][multiplyDBfieldSize] = 2
(für europäische Sprachen, 3 für asiatische Sprachen)

Hinweis  Sauberer ist es aber, wenn die Datenbank in den UTF-8 Zeichensatz umgewandelt wird, da Sie ansonsten immer wieder Problem mit Extensions oder bei Update von TYPO3 auftreten. Die Option „[SYS][multiplyDBfieldSize]=2“ dient dazu, auf einer für Latin1-Zeichensätze konfigurierte MySQL-DB auch UTF8-codierte Textdaten zu speichern. Ein Zeichen in UTF8 kann mehr als 1 Byte lang sein; um zB 50 UTF8-codierte Zeichen in einem Feld zu speichern, muss dieses - je nach Menge von Umlauten und anderen Sonderzeichen, auch mal 80 Bytes lang sein.

11. Kontrollieren Sie Ihre verwendeten HTML Templatedateien (*.tmpl oder *.html), ob diese im Zeichensatzt UTF8 abgespeichert wurden. Ansonsten werden Ihnen später im Frontend die Sonderzeichen (Umlaute), welche in diesen enthalten sind nicht richitg angezeigt. Das gleiche gilt auch für die in Verwendung befindliche „locallang.php“ Dateien.


12. Nun die Webseite prüfen. Es kann insbesondere natürlich sein, dass man bei der manuellen Korrektur der korrumpierten Daten aus der der alten MySQL DB in TextPad etwas übersehen oder fehlerhaft korrigiert hat.

13. Nach der Überprüfung ist die Umstellung geschafft, war doch ganz einfach.

 

6.3        Update der TYPO3 Source Dateien auf V4.5.x

Dieses Kapitel führt durch eine Update Installation der TYPO3 Source Dateien auf einem lokalen Server. Wenn Sie ein TYPO3 Installation von V3.8.x updaten müssen Sie zuerst auf die V4.1 updaten.

 

1.    Bevor Sie mit dem Typo3 Update beginnen, sichern Sie die MySQL-Datenbank und gesamte Datei- und- Verzeichnisstruktur Ihrer Website.

2.    Die neuen TYPO3 Source-Pakte „typo3_src-4.5.15.tar.gz“ auf der gleichen Verzeichnisebene entpacken in der die alten Source-Pakete der „typo3_src-4.x.x“ gelegen sind.

SLES11:~ # cp typo3_src-4.5.15.tar.gz /srv/www/htdocs
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # tar -xzf typo3_src-4.5.15.tar.gz

3.    Gehen Sie in das Installationsverzeichnis Ihrer TYPO3 Installation und führen Sie folgende Löschungen durch.

SLES11: /srv/www/htdocs # cd cms
SLES11: /srv/www/htdocs/cms # rm -R index.php media showpic.php t3lib tslib typo3 typo3_src

4.    Neue Symlinks auf das neue Source Paket erstellen.

SLES11: /srv/www/htdocs/cms # ln -s ../typo3_src-4.5.15 typo3_src
SLES11: /srv/www/htdocs/cms # ln -s typo3_src/t3lib t3lib
SLES11: /srv/www/htdocs/cms # ln -s typo3_src/typo3 typo3
SLES11: /srv/www/htdocs/cms # ln -s typo3_src/index.php index.php

5.    Caches im Verzeichnis „typo3conf“  löschen.

SLES11:/srv/www/htdocs/cms # rm typo3conf/temp_CACHED_*

6.    TYPO3 Install Tool > Update Wizard starten, den Anweisungen auf dem Bildschirm folgen.

7.    TYPO3 Install Tool > Database Analyzer > Update required tables COMPARE. In diesem Schritt werden die notwendigen Tabellen/Felder der vorhandenen Datenbank hinzugefügt. Gleichzeitig bereinigen Sie Ihre Datenbank von den nicht benötigten Inhalten. Markieren Sie immer alle vorgeschlagenen Änderungen und klicken sie auf die Schaltfläche, solange bis keine Fehler mehr angezeigt werden.

8.    Starten Sie jetzt das TYPO3 Backend und loggen Sie sich ein. Gehen Sie dann in der Navigation auf DB Überprüfung > Globalen Referenz-Index prüfen und aktualisieren > Referenzindex überprüfen.
Läuft alles tadellos, wird ein Text Ähnlich „318 records from 30 tables were checked/updated.“ angezeigt.

9.    Ihre TYPO3 Installation ist nun upgedatet. Neues Backend-Design: die Extension "TYPO3 skin" via EXT-Manager installieren.

 

6.4        Möglich Fehler bei Update Installation

 

6.4.1.1          Fehler „localconf.php is not found!”

 

Beim Aufruf der Seite im Backend kommt: „localconf.php is not found!” und

im Frontend erscheint: „Cannot find configuration. This file is probably executed from the wrong location.”

 

Ursache:

1.    Kontrollieren Sie die Zugriffsberechtigungen mit “ls –l /srv/www/htdocs/cms”. Wobei Sie „cms“ durch Ihr TYPO3 Verzeichnis ersetzen müssen. Wenn die Ausgabe wie folgt aussieht so müssen Sie für das Verzeichnis und die Dateien den Benutzer eintragen unter welchen der Apache Server läuft. Bei SLES 11  SP3 ist das „wwwrun“.

2.    Eventuell besteht auch ein Fehler mit den Dateilinks auf das TYPO3 Source Paket und die „index.php“ Datei.

 

Abhilfe:

1.    Wenn Sie feststellen das der Besitzer der Dateien auf „root“ oder einen anderen Benutzer steht, so geben Sie folgendes ein um den Besitzer zu ändern.

SLES11:~ # chown –R wwwrun:ftp  /srv/www/htdocs/cms
SLES11:~ # chmod –R 770 /srv/www/htdocs/cms

Das “cms” in den Befehlen ist durch Ihr Verzeichnis der TYPO3 Installation zu ersetzen. Im ersten Befehl wurde die Gruppe „ftp” für den reibungslosen FTP Zugriff vergeben.
Siehe auch Kapitel „Verzeichnisrechte für TYPO3 vergeben“ vor.

2.    Siehe Kapitel „Dateilinks auf das TYPO3 Source Paket setzen“

 

 

6.4.1.2          Fehler beim Starten des TYPO3 Install Tool kommt eine leere (weiße)Seite

 

Analyse: Schalte Sie in der „php.ini“ im Verzeichnis „/etc/php5/apache2/“ die Anzeige der PHP Fehlermeldungen ein.

 

display_errors = on

 

Danach starten Sie den Apache Server neu mit „rcapache2 restart“.

 

Es wird jetzt folgende Meldung angezeigt:

 

Parse error: syntax error, unexpected T_STRING in /srv/www/htdocs/rpw/typo3conf/localconf.php on line 16

 

Abhilfe:

D.h. Sie haben einen Fehler in der „localconf.php“ in der Zeile 16. Kontrollieren Sie die Zeile 16 der „localconf.php“. Eventuell haben Sie einen Schreibfehler in dieser Zeile.
Bei meiner Installation stand in dieser Zeile folgender Eintrag:

$TYPO3_CONF_VARS['SYS']['compat_version'] = '4.5;

 

Es war ganz einfach das einfache Anführungszeichen (‘) hinter der Zahl 5 vergessen worden.

 

6.4.1.3          Fehler „Oops, an error oocured! The page is not configured! [type= 0][]“

 

Nach einer Update Installation erscheint im Frontend plötzlich nur mehr die folgende Fehlermeldung.

 

 

Behebung:

Das Bakend funktioniert noch, aber im Root Template warem im Setup-Bereich nur mehr 5 Zeilen vorhanden, alle anderen Zeilen waren verschwunden. Es musste eine Rücksicherung der Datenbank durchgeführt werden, da die Einträge im Setup-Bereich sonst nirgends abgespeichert wurden.

 

 

6.4.1.4          Fehler TYPO3 V4.5.x beim Aufruf vom TYPO3 Install Tool nur leere (weiße) Seite

Analyse: Schalte Sie in der „php.ini“ im Verzeichnis „/etc/php5/apache2/“ die Anzeige der PHP Fehlermeldungen ein.

 

display_errors = on

 

Danach starten Sie den Apache Server neu mit „rcapache2 restart“.

 

Es wird jetzt folgende Meldung angezeigt:

 

Parse error: syntax error, unexpected T_STRING in /srv/www/htdocs/typo3_src-4.5.15/typo3/install/index.php on line 27

 

Abhilfe:

In der Zeile 27 war ein falscher Text „nstall tool is locked /*“ reingerutscht. Dieser muss „/* Install tool locked“ heißen. Die Datei danach wieder gespeichert.

Die Anzeige der PHP Fehlermeldungen nach Funktionstest wieder ausgeschaltet.

 

 

1.2.1.1          Fehler „The Install Tool is locked.“ beim Starten des TYPO3 Install Tool

 

The Install Tool is locked.

Fix: Create a file typo3conf/ENABLE_INSTALL_TOOL
This file may simply be empty.

For security reasons, it is highly recommended to rename
or delete the file after the operation is finished.

 

Analyse:

Das TYPO3 Install Tool aus dem Verzeichnis „/srv/www/htdocs/cms/typo3/install“ und der Datei “index.php” wurde gesperrt.

Abhilfe:

Kopieren Sie eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis  „typo2conf“. Achten Sie dabei darauf, dass das Datum der Datei dem heutigen Datum entspricht und die Uhrzeit der Erstellung der Datei nicht älter als eine Stunde ist.

 

WICHTIG  Vergessen Sie nicht die Datei „ENABLE_INSTALL_TOOL“ nach Durchführung der Konfigurationen wieder zu entfernen.

 

6.4.1.5          Fehler der Login mit dem TYPO3 Install Tool Kennwort geht nicht

 

Nachdem das Install Tool aufgerufen wird funktioniert keines der verwendeten Kennwörter.

 

 

Abhilfe:

Sie können das Install Tool Kennwort zurücksetzen indem Sie nach Eingaben eines Kennwortes den angezeigten „md-value“ in die Datei „localconf.php“ in die Zeile mit dem Text „$TYPO3_CONF_VARS['BE']['installToolPassword'] =“ kopieren.

 

6.4.1.6          Fehler beim Login in das TYPO3 Backend

 

 

Analyse: Sie haben auf eine neue TYPO3 Version upgedatet aber das TYPO3 Install Toll nicht gestartet.

 

Abhilfe: Starten Sie das TYPO3 Install Tool mit http://www.cms.com/typo3/install. Wobei der hier verwendete Domänenname „cms.com“ Ihren Domänennamen angepasst werden muss.

 

1.    Aktivieren Sie das TYPO3 Install Tool (siehe „TYPO3 Install Tool starten“).

2.    Starten Sie im TYPO3 Install Tool zuerst „Update Wizard“.

3.    Klicken Sie bei „changeCompatibilityVersion“ auf „Next“.

4.    Setzen Sie ein Häkchen bei allen „Acknowledged“.

5.    Klicken Sie danach auf die Schaltfläche „Perform updates!“.

6.    Wählen Sie jetzt im TYPO3 Install Tool „Database Analyzer“.

7.    Klicken Sie jetzt bei „Update required tables“ auf „COMPARE“.

 

8.    Überprüfen Sie nach Deaktivierung des TYPO3 Install Tools nochmals die Funktion des Backend und Frontend.

 

6.4.1.7          Fehler bei Tabellen sind verschiedene Collation eingestellt

Nach dem Aufruf  von „show table status“ werden in der Ausgabe der einzelnen Tabelle verschiedene

mysql > use cms;

mysql > show table status;

 

| be_groups                                  | MyISAM |      10 | Dynamic    |      5 |           1534 |        7672 |  281474976710655 |         3072 |         0 |            6 | 2008-02-21 22:46:43 | 2008-02-24 17:22:18 | 2008-02-21 22:46:43 | latin1_german2_ci |     NULL |                |         |

| be_sessions                                | MyISAM |      10 | Dynamic    |      1 |             88 |         380 |  281474976710655 |         2048 |       292 |         NULL | 2008-02-21 22:46:43 | 2008-02-26 23:52:32 | NULL                | latin1_german2_ci |     NULL |                |         |

| be_users                                   | MyISAM |      10 | Dynamic    |    392 |            211 |       84388 |  281474976710655 |        16384 |      1520 |          393 | 2008-02-24 20:10:59 | 2008-02-26 23:47:22 | 2008-02-24 20:10:59 | latin1_german2_ci |     NULL |                |         |

| cache_extensions                           | MyISAM |      10 | Dynamic    |  11799 |            394 |     4650760 |  281474976710655 |       248832 |         0 |         NULL | 2008-02-21 22:46:44 | 2008-02-21 22:46:48 | NULL                | latin1_swedish_ci |     NULL |                |         |

| cache_hash                                 | MyISAM |      10 | Dynamic    |    115 |          20363 |     2341832 |  281474976710655 |         8192 |         0 |         NULL | 2008-02-21 22:46:49 | 2009-02-21 10:35:38 | NULL                | latin1_swedish_ci |     NULL |                |         |

| cache_imagesizes                           | MyISAM |      10 | Dynamic    |    239 |            116 |       27928 |  281474976710655 |        15360 |         0 |         NULL | 2008-02-21 22:46:53 | 2009-02-17 23:57:19 | NULL                | latin1_german2_ci |     NULL |  

 

Abhilfe: Siehe Kapitel „Umstellung vom Zeichensatz von <latin1> auf <utf8>“.

 

 

6.4.1.8          Fehler beim normale Website kommt eine leere (weiße) Seite

 

Ursache: Nach einer Umstellung oder einen Update kann es vorkommen dass Sie nicht mehr die korrekte „typo3conf/localconf.php“ verwenden. Kontrollieren Sie ob die verwendete „localconf.php“ die richtige ist und ob alle Einträge für verwendetet Extensions vorhanden sind.

 

Abhilfe:

Kontrolle des Datenbankzugriffs

 


$typo_db_username = neuerWert;
$typo_db_password = neuerWert;
$typo_db_host = neuerWert;
$TYPO3_CONF_VARS['SYS']['compat_version'] = 4.5; //abhängig von der TYPO3-Version
$typo_db = neuerWert;

 

Kontrollieren Sie danach im Backend ob alle Extension richtig installiert sind. Es kann nämlich sein das durch eine falsche „localconf.php“ benötigte Extensions nicht installiert sind. Diese müssen dann manuell installiert werden (z.B. Autotemplate oder Template Voila). Löschen Sie danach nochmals den TYPO3 Cache und kontrollieren Sie die Website.

 

 

6.4.1.9          Fehler auf neuer TYPO3 Website kommt „Please proceed to the Update Wizard“

 

This installation was just upgraded to TYPO3 4.5. In this version, some default settings have changed.

You can continue to use your settings by specifying the former default values in localconf.php.

Please proceed to the Update Wizard in the TYPO3 Install Tool to update your configuration.

 

Ursache:

Nach einer Umstellung oder einen Update kann es vorkommen, dass Sie diese Meldung auf Ihrer Website erhalten wenn der Upgrade auf die neue TYPO3 Version noch nicht abgeschlossen wurde.

 

Abhilfe:

Starten Sie das TYPO3 Install Tool und führen alle Schritte des „Update Wizard“ aus. Danach klicken Sie auf „COMPARE DATABASE“ welches ganz unten im „update Wizard“ angezeigt wird.

 

6.4.1.10       Fehler auf Website „The requested page didn`t have proper…the tree-root!”

 

Beim Aufruf der TYPO3 Website erscheint die Fehlermeldung
“The requested page didn`t have a proper connection to the tree-root!
(Broken rootline)”

 

 

Ursache:

Sie haben den Update von einer alten Website durchgeführt auf welcher „RealURL“ Extension aktiviert war. Auf Ihrer neue Website wurde aber RealURL über die Datei „.htaccess“ nicht aktiviert.

 

Abhilfe:

Deaktivieren Sie die Extesnion „RealURL“ im „Extension Manager“.

 

6.4.1.11       Fehler in der umgestellte Website wir eine graue Box angezeigt

 

Nach Umstellung einer Website auf die TYPO3 Version 4.5.x wird auf der Website immer eine graue Box mit dem Text „RELEASE NOTES FOR TYPO3 4.x releases“ angezeigt.

 

 

Ursache:
Die neue TYPO3 Version führt einen Syntax Check vom TYPO3 Skript durch und gibt immer, wenn dabei ein Fehler festgestellt wurde, diese Info Box aus.

 

Abhilfe:

Stellen Sie zuerste fest in welchen Bereich des TYPO3 Skriptes diese Info Box ausgegeben wird. Die Box erscheint immer gleich neben dem definierten TYPO3 Objekt auf der Website.

Wenn Sie den TYPO3 Skript Bereich in welchen ein Fehler vorhanden sein muss lokalisiert haben, dann prüfen Sie den dort vorhandenen TypoScript Code genau.

Bei mir war die Angaben der Farbe mit „backColor =white“ für den Fehler verantwortlich nach Änderung auf „„backColor =#FFFFFF“ war die Meldungsbox verschwunden.

6.4.1.12       Fehler in der Media Auswahl (DAM) für Bilder wird nichts angezeigt

 

Nach dem Update werden in der Media-Auswahl für Bilder keine Dateien angezeigt.


 

Ursache:

Nach dem Update einer TYPO3 Installation bei Verwendung der „dam“ Extension, kann es vorkommen das in der Media-Auswahl keine Bilder angezeigt werden. Unter DAM werden die Einzelnen Dateien und Bilder in eine indezierten Liste angelegt, diese Indezierung kann einige Zeit brauchen bis diese durchgeführt wird. Ist die indezierte Liste leer wird auch nichts angezeigt.

 

Abhilfe:

Klicken Sie im TYPO3 Verzeichnisbaum auf „Media

Wählen Sie die einzelnen Ordnern mit den Bilder aus welche nicht angezeigt werden.
Klicken Sie dann auf „Aktualisieren“ damit der Index neu erstellt wird.

 

Wenn alle Warnsymbole verschwunden sind, ist die Indizierung wieder in Ordnung.

Oft kann das einige Zeit dauern bis die einzlenen Dateien alle indiziert wurden.

 

6.4.1.13       Fehler auf Website werden Banner Bilder nicht angezeigt

 

 

Ursache:

Die Banner Bilder wurden über die Extension „Image Rotation (ric_rotation)“ angezeigt. Bei Einrichtung von dieser werden die Banner Bilder in den Ordner „uploads/tx_ricrotation/“ kopiert. Beim Update der TYPO3 Installation wurde der Ordner aber nicht mit kopiert.

Abhilfe:
Kopieren Sie den Ordner „uploads/tx_ricrotation/“ von der alten TYPO3 Installation in das neue Installationsverzeichnis.

 

6.4.1.14       Fehler nach Konvertierung zu „utf8“ werden Umlaute und Sonderzeichen immer mit zwei Zeichen angezeigt

 

Nach einer Update Installtion und Konvertierung in „utf8“ bekommen sie die Umlaute und Sonderzeichen immer mit zwei Zeichen im Frontend und Backend angezeigt. Die Datenbank ist auf UTF8 eingestellt und auch im Template ist auf „utf8“ umgestellt. Trotzdem werden die Umlaute oder Sonderzeichen immer mit zwei Sonderzeichen angezeigt. So steht etwa "ä" für ein ä oder "ö" für ein ö.

 

Informationen

 

RealPowerWork beschäftigt sich mit Software Evaluierung und Programmierung. Hinter allen steht kein kommerzieller Hintergrund. Das vorangige Ziel dieser Veröffentlichungen besteht in der kostenlosen Bereitstellung von Informationen, Tips und Tricks, Beschreibungen oder Programmen.

 

Im Bereich News werden Mitteilung zu neuen Veröffentlichungen oder Planungen oder sonstiges Wissenwertes angezeigt.

 

Darunter befinden sich die Themenlinks, welche im Momentoment TYPO3, Linux und Lotus Notes beinhalten.

 

Unter den Themenlinks gibt es faßt immer den Bereich Dokumente. Hier werden Dokumente veröffentlicht die selbst erstellt wurden, oder Teil eines Freeware oder Open Source Projektes sind.

 

Zusätzlich unter Themenlinks ist oft der Bereich Downloads vorhanden. Hier werden selbst entwickelte Programme, Freeware oder Open Source zum kostenlosen Download angeboten.

 

Alle erwähnten Marken sind Schutzmarken der jeweiligen Unternehmen.

 

Ursache:

Wenn Sie in TYPO3 Install Tool die Option „forceCharset“ auf „utf-8“ ein

oder in der „localconf.php“ sollte die Zeile
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';

vorhanden ist, dann sollte der Inhalt der Datenbank im UTF8 Zeichensatz interpretiert werden. Löschen Sie auch alle Dateien aus dem „typo3conf“ Verzeichnis mit
rm temp_CACHE_*

 

Sollte dann der Fehler mit den Umlauten immer noch auftretten, so könnte hier der unglückliche Fall aufgetretten sein, dass Sie eine Datanbank, welche schon in UTF8 konvertiert war, nochmals in UTF8 konvertiert haben. Dadurch haben Sie jetzt die Sonderzeichen in einen zwei Zeichen-Code umgewandelt und die Umlaute wurden dann auch so in der Datenbank gespeichert. Siehe dazu auch http://www.skom.de/Doppelt-UTF-8-kodierte-Daten-i.191.0.html

 

Behebung:

Führen Sie eine Sicherung der Datenbank mit „mysqldump“ durch. Kontrollieren Sie den Inhalt der Sicherung und achten Sie auf die Texte in der Sicherung wie nachfolgend beschrieben.

 

SLES11:~ # mysqldump –uroot –p typo3db > /root/typo3db-backup.sql

SLES11:~ # vi /root/typo3db-backup.sql

è Suchen nach mit “/” und Eingabe von  “INTO `pages`

è Wenn Sie dort im Text folgende Zeichen folgen finden handelt es sich um eine doppelte Konvertierung:

 

Dokumente,diese,nicht,Kosten,wird,Source,Open,RealPowerWork,Freeware,Rechte,ensprechenden,gelten,verÃ<83>¶ffentliche,Reparaturen,Ihnen,liegen,falsch,Dokumenten,diesen,fehlerhaft,herausstellen,notwendige,Copyright,Service,behÃ<83>¤lt,VerÃ<83>¤nderung,Weiterverkauf,Urheberrechte,Duplizierung,darf,erfolgen,EinverstÃ<83>¤ndnis,seine,vorliegen,Beschreibungen,angefÃ<83>¼hrt,verfassten,sofern,Schutzrechte,andere,Sofware,bezÃ<83>¼glich,darauf,gestellt,VerfÃ<83>¼gung,hingewiesen,dass,GewÃ<83>¤hrleistung,keinerlei

 

In den der obigen Ausgabe sehen Sie das die Umlaute, wie z.B. „ä“ als „Ã<83>¤”, “ü” als “Ã<83>¼“ oder „Ö“ als „Ã<83>¶” in der Datenbank abgespeichert wurde.

 

Führen Sie jetzt zuerst einmal eine Sicherung Ihrer Datenbank mit dem Parameter „--default-latin-character-set=latin1“ durch:

 

SLES11:~ # mysqldump -uroot -p typo3db --default-character-set=latin1 > /root/typo3db-backup-latin1.sql

 

Damit erhalten Sie vorerste einmal einen Datenbankdump welcher keine doppelt konvertierten Sonderzeichen enthält.

 

Dokumente,diese,nicht,Kosten,wird,Source,Open,RealPowerWork,Freeware,Rechte,ensprechenden,gelten,veröffentliche,Reparaturen,Ihnen,liegen,falsch,Dokumenten,diesen,fehlerhaft,herausstellen,notwendige,Copyright,Service,behält,Veränderung,Weiterverkauf,Urheberrechte,Duplizierung,darf,erfolgen,Einverständnis,seine,vorliegen,Beschreibungen,angeführt,verfassten,sofern,Schutzrechte,andere,Sofware,bezüglich,darauf,gestellt,Verfügung,hingewiesen,dass,Gewährleistung,keinerlei,jegliche

 

In der obigen Ausgabe sehen Sie die Umaltue so wie diese in UTF8 aussehen sollten, ein „ä“ als „ä“, ein „ü“ als „ü“ oder ein „Ö“ als „ö“.

 

Wir kopieren jetzt die Datei „typo3db-backup-latin1.sql“ auf den Namen „typo3db-backup-utf8.sql“ und führen dann folgende Befehler aus:

 

SLES11:~ # cp /root/typo3db-backup-latin1.sql /root/typo3db-backup-utf8.sql

SLES11:~ # vi /root/typo3db-backup-utf8.sql
:%s/latin1/utf8/ 
ß wir drücken <Esc> dann den Doppelpunkt eingeben, danach den Text wie angezeigt

:wq   ß dann <Esc> und Doppelpunkt un mit “wq” speichern.

 

Wir habne jetzt die Zeichensatz-Angabe in der Sicherungsdatei von „latin1“ auf „utf8“ geändert. Die Datei „typo3db-backup-utf8.sql“ sieht jetzt wie eine Datenbanksicherung im UTF8 Zeichensatz aus. Diese Datei verwenden wir jetzt für unsere Rücksicherung.

 

SLES11:~ # mysql -uroot -p < /root/typo3db-backup-utf8.sql

 

Nach der Rücksicherung sollten die Umlaute und Sonderzeichen im Backend und Frontend wieder richtig angezeigt werden.

 

Hinweis  Sie müssen keine zusätzlichen Definitionen im Root Template für den UTF8 Zeichensatz vornehmen, wenn die Datenbank schon im UTF8 Zeichenformat vorliegt. Auch die Eintragungen im TYPO3 Install Tool im Feld „setDBinit“ sind für neuer TYPO3 Versionen nicht mehr erforderlich.

 

 

6.4.1.15       Fehler „TYPO3 requires PHP 5.3.0 or higher“ erhalten Sie unter TYPO3 4.6.x

 

Den folgenden Fehler erhalten Sie beim Aufruf der Website unter TYPO3 4.6.x wenn Ihr Server die PHP 5.3.x nicht installiert hat.

 

TYPO3 requires PHP 5.3.0 or higher.

 

Abhilfe:

Voraussetzung für die TYPO3 V3.6 Installation ist eine vorhandene PHP 5.3.x Installation auf dem Server. Verwenden Sie eine neuere Linux Distribution oder installieren Sie PHP 5.3.x manuell auf Ihren Server.



7    Zusätzliche neue TYPO3 Instanz erstellen

Wenn Sie mehrere TYPO3 Websites auf einem lokalen Server betreiben möchten, so können Sie dies sehr einfach durchführen.

7.1        Installation einer zusätzlichen TYPO3 Instanz

 

1.    Source Paket von TYPO3 z.B. „typo3_src_4.5.15“ sollte durch die schon vorhandene TYPO3 Site schon vorhanden sein.

2.    Durch das Verschieben der Dateien des entpacken „Dummy Paketes“ z.B. „dummy-4.5.15.tar.gz“ in ein neues Verzeichnis wird eine neue zusätzliche TYPO3 Instanz erzeugt.

SLES11:~ # cp dummy-4.5.15.tar.gz /srv/www/htdocs
SLES11:/srv/www/htdocs # tar xzf dummy-4.5.15.tar.gz
SLES11:/srv/www/htdocs # mv dummy-4.5.15 newcms

WICHTIG  Ersetzen Sie den Namen „newcms“ durch den gewünschten Namen in welchen Ihr TYPO3 Installationsverzeichnis auf dem Server sein soll.

3.    Berechtigungen im Verzeichnis für den Benutzer und die Gruppe unter welcher der Apache  am Server läuft vergeben.
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # chown –R wwwrun newcms/
SLES11:/srv/www/htdocs # chmod –R u+w,o-rwx newcms/

4.    Erstellen Sie die neuen Symlinks auf die TYPO3 Source Dateien.
SLES11: cd /srv/www/htdocs/newcms
SLES11:/srv/www/htdocs/cms # ln –s ../typo3_src-4.5.15 typo3_src
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/t3lib t3lib
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/typo3 typo3
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/index.php index.php

5.    Starten Sie jetzt das „TYPO3 Install Tool“ und erzeugen Sie eine neue Datenbank für diese TYPO3 Instanz.
http://locahost/newcms

Hinweis  Sie können die TYPO3 Datenbank auch manuell vor Ausführung des „TYPO3 Install Tools“ erstellen und dann im Install Tool auswählen. Dies wird dann empfohlen wenn Sie spezielle Zeichensatzeinstellungen wie z.B. „utf8“ in der Datenbank benötigen.

6.    Folgen Sie den einzelnen Schritten des „TYPO3 Install Tool“ und beenden Sie die Einrichtung mit der Vergabe eines neue TYPO3 Site Namens in der Install Tool
Basic Configuration

7.    Damit sie nun auf diese neue auch über einen eigenen DNS Namen zugreifen können müssen Sie noch in der Apache Server Konfiguration eine neue Server Instanz erzeugen.


7.2        Neuen virtuellen Webserver in Apache erstellen

Wenn Sie mehrere Websites auf einer TYPO3 Installation betreiben wollen. Müssen Sie im Apache Server einen virtuellen Server für jede Website definieren.

Hinweis  Wenn Sie sich einen neuen virtuellen Server für Testzwecke oder als Zwischenserver für eine Übersiedlung einer TYPO3 Website erstellen, so ist es Vorteilhaft den gleichen Domänennamen zu verwenden, welcher später am Produktiv-Server verwendet wird. Sie müssen nur die „hosts“ Einträge erstellen die zu Ihrer IP-Adresse verweisen.

1.    Dies erfolgt bei Apache2 für eine SLES 11 Installation im Verzeichnis „vhost.d“ unter dem „/etc/apache2/“ Verzeichnis.
SLES11:~ # cd /etc/apache2/vhosts.d

2.    Kopieren Sie am besten die vorhandene Datei „vhost.template“ in eine neue Datei mit dem Namen für den virtuellen Host z.B. „newcms.conf“.
SLES11:/etc/apache2/vhosts.d # cp vhost.template newcms.conf

Hinweis  Lesen Sie kurz die Beschreibung für die Einrichtung von virtuellen Hosts. Kopieren Sie dann die entsprechenden Remarked („#“) Zeilen in einen neuen Bereich unterhalb.
Bearbeiten Sie die neue Konfigurationsdatei „newcms.conf“ wie folgt.

<VirtualHost *:80>

    ServerAdmin webmaster@www.newcms.com

    ServerName www.newcms.com

    DocumentRoot /srv/www/htdocs/newcms

 

    # if not specified, the global error log is used

    ErrorLog /var/log/apache2/www.newcms.com-error_log

    CustomLog /var/log/apache2/www.newcms.com-access_log combined

   ScriptAlias /cgi-bin/ "/srv/www/htdocs/newcms/cgi-bin/"

    <Directory "/srv/www/htdocs/newcms/cgi-bin"

    </Directory>

    <Directory "/srv/www/htdocs/newcms">

        Options Indexes FollowSymLinks

        AllowOverride None

        Order allow,deny

        Allow from all

 

    </Directory>

 

</VirtualHost>

 

Hinweis  Ersetzen Sie  in dem oben angeführten Konfigurationszeilen den Text „newcms“ und „www.newcms.com“ immer durch Ihren eigenen gewünschten Domain und Host-Namen für Ihre TYPO3 Instanz.

 

3.    Aktivieren Sie alle Namen für die virtuellen Hosts auf Port „80“ am Ende in der Datei „listen.conf“ im Verzeichnis „/etc/apache2/“.

#NameVirtalHost *

NameVirtualHost *:80

 

4.    Starten Sie danach den Apache2 Server neu um die Konfiguration zu testen.
SLES11:~ # rcapache2 restart

5.    Sie können sich die angelegten virtuellen Hosts mit folgendem Befehl ansehen.
SLES11:~ # /usr/sbin/httpd2 –S

SLES11:/etc/apache2/vhosts.d # /usr/sbin/httpd2 -S

VirtualHost configuration:

wildcard NameVirtualHosts and _default_ servers:

*:80                   is a NameVirtualHost

         default server www.cms.com (/etc/apache2/vhosts.d/cms.conf:15)

         port 80 namevhost www.cms.com (/etc/apache2/vhosts.d/cms.conf:15)

         port 80 namevhost www.realpowerwork.com (/etc/apache2/vhosts.d/rpw.conf:15)

SLES11:/etc/apache2/vhosts.d #

 

6.    Außerdem müssen Sie dafür sorgen,  dass alle angegeben Hostnamen wie  „www.newcms.com“ auch von Ihrem DNS Server aufgelöst werden.
Wenn Sie keinen DNS Server verwenden, so müssen Sie die lokale „hosts“ Datei bearbeiten und einen neuen Eintrag hinzufügen (/etc/hosts):
 

10.0.0.144            www.realpowerwork.com

10.0.0.144            www.newcms.com

 

Hinweis  Ersetzen Sie  in dem oben angeführten Konfigurationszeilen die IP-Adresse „10.0.0.144“ und den Domain-Namen „newcms.com“ durch  eigenen gewünschten IP-Adresse und Domain-Namen für Ihre TYPO3 Instanz.

7.    Im TYPO3 Backend legen Sie jetzt noch auf der Startseite (nicht im Root) Ihrer Website einen Domaineintrag an. Klicken Sie auf „Neu“ wählen Sie „Domain“ und geben Sie den Domainnamen Ihrer Website „newcms.com“ ein.

 

7.2.1.1          Fehler beim Starten vom Apache Server „NameVirtualHost …. has no VirtualHosts“

 

Beim Starten vom Apache Server kommt folgende Meldung.

 

SLES11:/home/rpw # rcapache2 restart

[Sun Oct 09 11:42:04 2011] [warn] NameVirtualHost www.realpowerwork.com:0 has no VirtualHosts

Syntax OK

Shutting down httpd2 (waiting for all children to terminate)                           done

Starting httpd2 (prefork) [Sun Oct 09 11:42:05 2011] [warn] NameVirtualHost www.realpowerwork.com:0 has no VirtualHosts                                            done

SLES11:/home/rpw #

 

Abhilfe:

Wenn Sie mehrere virtuelle Host auf einem Apache Server betreiben, sollten Sie für jeden virtuellen Host in der Konfigurationsdatei folgendes eintragen:

 

<VirtualHost *:80>

    ServerAdmin webmaster@www.newcms.com

    ServerName www.newcms.com

</VirtualHost>

 

In der „listen.conf“ Datei aktivieren Sie dann alle Namen für virtuelle Host auf Port „80“:

 

#NameVirtalHost *

NameVirtualHost *:80

 

7.2.1.2          Fehler beim Starten vom Apache Server „mixed * and non-* …not supported“

 

Beim Starten vom Apache Server mit „rcapache2 restart“ wird folgende Fehlermeldung ausgegeben und der Apache Server wird nicht gestartet.

 

SLES11:/etc/apache2/vhosts.d # rcapache2 restart

[Sun Sep 25 10:31:11 2011] [error] VirtualHost www.newcms.com:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results

Syntax OK

Shutting down httpd2 (waiting for all children to terminate)                                                                      done

Starting httpd2 (prefork) [Sun Sep 25 10:31:12 2011] [error] VirtualHost www.newcms.com:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results

 

Abhilfe:
Achten Sie darauf dass Sie in Ihrer Datei für den virtuellen Apache Server einen Namen für den virtuelle Host vergeben haben.

<VirtualHost *:80>

</VirtualHost>

 

Aktivieren Sie alle Namen für die virtuellen Hosts auf Port „80“ am Ende in der Datei „listen.conf“ im Verzeichnis „/etc/apache2/“.

 

#NameVirtalHost *

NameVirtualHost *:80

 

7.2.1.3          Fehler beim starten Apache Server “[error] (EIA2)Name or service not know”

 

Beim Starten vom Apache Server kommt folgende Fehlermeldung.

 

SLES11:/etc/sysconfig/network # rcapache2 restart

[Sat Oct 01 14:33:31 2011] [error] (EAI 2)Name or service not known: Could not resolve host name www.cms.com -- ignoring!

[Sat Oct 01 14:33:31 2011] [error] (EAI 2)Name or service not known: Could not resolve host name www.cms.com -- ignoring!

Syntax OK

 

Ursache:

Der vergebene Hostname existiert schon im Internet und es wird über DNS versucht diesen Namen aufzulösen. Ihr DNS Server, sollten Sie einen verwenden, kann diesen Namen aber nicht auflösen. Wenn Sie keinen DNS Server verwenden müssen Sie einen Eintrag in der lokalen „/etc/hosts“ Datei für Ihren virtuellen Host vornehmen.

 

Abhilfe:
Sie müssen dafür sorgen,  dass alle angegeben Hostnamen wie  „www.newcms.com“ auch von Ihrem DNS Server aufgelöst werden.
Wenn Sie keinen DNS Server verwenden, so müssen Sie die lokale „hosts“ Datei bearbeiten und einen neuen Eintrag hinzufügen (/etc/hosts).

 

10.0.0.144            www.newcms.com

 

Ersetzen Sie die IP-Adresse und den Hostnamen durch die von Ihnen verwendete IP-Adresse und den Hostnamen.

 


8    Grafikfunktion von TYPO3 einrichten

Für die TYPO3 Installation sollten Sie noch einige Pakete auf Ihren Server installiert sein. Wenn Sie die TYPO3 Site auf einen gehosteten Website eines Providers betreiben der Ihnen TYPO3 zur Verfügung stellt brauchen Sie sich um diese zusätzlichen Pakte nicht zu kümmern, weil diese schon der Internet Provider zur Verfügung stellt. Wenn Sie einen lokalen TYPO3 Server betreiben, so müssen Sie diese Pakete vor der Website Einrichtung unter TYPO3 installieren.

Diese Grafikprogramme „GD“ (oder „GDLib“) und „FreeType“ sind auf jedem TYPO3 System erforderlich. Diese werden für den „GRAPHICBUILDER verwendet (z.B. grafische Schriften).

Die Programme „GraphicsMagick“ oder „ImageMagick“ werden für Bildbearbeitungen, insbesondere Skalierung der Bilder verwendet.

 

Hinweis  Im Moment wird der Einsatz von „GraphicsMagick“ empfohlen, weil damit eine bessere Qualität bei geringerem Systemverbrauch erreicht wird.

 

WICHTIG  Vorsicht wenn Sie eine lokale Installation von TYPO3 besitzen und die „localconfig.php“ aus dem Verzeichnis „typo3conf“ auf einen Server eines Providers kopieren, überschreiben Sie damit eventuell auch die Einstellungen für das Grafikprogramm.

Kopieren Sie zuerst die „localconf.php“ Datei des Internet Providers und übernehmen Sie aus dieser alle Einstellungen für die Grafikeinstellungen und Datenbankzugriffseinstellungen. Oder fügen Sie in die Provider Datei alle Änderungen der lokalen „localconf.php“ ein, ohne dass Sie die Grafikeinstellungen oder die Datenbankzugriffseinstellungen verändern der Provider Datei verändern.

8.1        Installation von GDLib

Bei den meisten gängigen Linux Distributionen ist die „GD“ oder „GDLib“ Library schon installiert.

Kontrollieren Sie unter den vorhanden Pakten mit „rpm –qa gd“ ob das GDLib Paket schon installiert ist. Bei einem vorinstallieren TYPO3 Paket von einem Internet Provider sollte dies schon der Fall sein.

 

8.1.1           Kontrolle ob GDLib installiert ist

 

Kontrollieren Sie über das TYPO3 Install Tool mit dem Menüpunkt „phpinfo()“ ob das Grafikprogramm „gd“ installiert ist und ob die Funktion in PHP über das Paket „php5-gd“ eingebunden wurde.

 

Öffnen sie die „phpinf0()“ suchen Sie die Rubrik „gd“ darunter werden alle Informationen zum „gd“ Grafikprogramm angezeigt.

 

Hinweis  Sollte die Rubrik „gd“ nicht angezeigt werden Kontrollieren Sie nochmals die installierten Pakete, ggf. führen Sie ein Update durch

 

8.1.1.1          Fehler: „GDLib using PNG“ unter „All Configuration“ nicht aktiviert

 

 

Ursache:

Entweder das Installierte GDLib Paket ist keine „GDLib 2“ Version, oder in der TYPO3 Konfiguration wurden dieser Punkt nicht aktiviert.

 

Abhilfe:

Gehen Sie im TYPO3 „Install Tool“ in den Punkt „All Configuration“ und setzen Sie folgende Optionen:

[GFX][gdlib_png] = 1

 

Klicken Sie danach auf die Schaltfläche „Write to localconf.php

 

8.2        Installation von GraphicsMagick

Wenn Sie die TYPO3 Site auf einen gehosteten Website eines Internet Providers betreiben können Sie die Installation des Grafikprogramms überspringen, da dies vom Provider schon zur Verfügung gestellt wird.

 

Ansonsten ist eines empfohlenen der Pakete für die Grafikformatierung oder –umwandlung das Programm GraphicsMagick. Sehen Sie nähere Details dazu unter: http://www.graphicsmagick.org/download.html

 

1.    Prüfen Sie, ob Sie die ImageMagick Programme "gm“ (ohne Pfadangabe) gestartet werden können. Wenn der Befehl nicht funktioniert, müssen Sie GraphicsMagick nachinstallieren.
Download von:
ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/1.1/GraphicsMagick-1.1.15.tar.gz

2.    Wenn Sie ein Tarball-Paket beinhaltet die Dateiendung „tar“ downgeladen haben müssen Sie diese zuerst mit folgenden Befehl entpacken:

SLES11:~ # tar -xvzf GraphicsMagick-1.1.15.tar.gz

3.    Gehen Sie jetzt in das Verzeichnis „GraphicsMagick-1.1.15“ mit:

SLES11:~ # cd GraphicsMagick-1.1.15

4.    Für die Kompilierung des ImageMagick Programmes benötigen Sie noch die sogenannten “devel”-Pakte welche Sie noch nachinstallieren müssen:
„freetype2-devel“, „gd-devel“,“glibc-devel“,„liblcms-devel“,„libtiff-devel“, „libpng-devel“,„libjpeg-devel“, „libjasper-devel“, „libzip-devel“, „libbz2-devel“ „libxml2-devel“, „zlib-devel“

Hinweis  Alle angeführten Pakete  finden Sie nicht auf den normalen SLES11-SP1 DVDs sondern nur auf der DVD1 des SLES11-SP1-SDK (Development Kits). http://download.novell.com/Download?buildid=zzeQqpY9nK4~

 

5.    Führen Sie den „configure“ mit folgenden Parametern aus um GraphicsMagick statisch zu Linken:

SLES 11 :~# ./configure --enable-static --disable-shared --with-tiff --without-perl --without-magick-plus-plus --without-x --without-fpx --without-threads --without-dps --without-lcms --without-trio --without-wmf --disable-installed --enable-ltdl-convenience --enable-magick-compat CC=gcc CFLAGS='-O2 -pipe' LDFLAGS= LIBS= CXX=g++ CXXFLAGS='-O2 -pipe'

Hinweis  Eventuell funktioniert der Befehl “./configure” auch einwandfrei ohne das Sie die lange Optionsliste eingeben. Sie sollten es einfach einmal versuchen und sich das Ergebnis ansehen. Wichtig ist auch das „--enable-static=yes“ angezeigt wird.

6.    Nach Ausführung sollte folgendes angezeigt werden (unter GM V1.1.15):

GraphicsMagick is configured as follows. Please verify that this

configuration matches your expectations.

 

Host system type : x86_64-unknown-linux-gnu

 

Option            Configure option             Configured value

-----------------------------------------------------------------

Shared libraries  --enable-shared=no    no

Static libraries  --enable-static=yes          yes

GNU ld            --with-gnu-ld=yes            yes

LZW support       --enable-lzw=yes            yes

Quantum depth     --with-quantum-depth=8       8

 

Delegate Configuration:

BZLIB             --with-bzlib=yes             yes

DPS               --with-dps=no                no

FlashPIX          --with-fpx=no                no

FreeType 2.0      --with-ttf=yes               yes

Ghostscript       None                         gs (8.62)

Ghostscript fonts --with-gs-font-dir=default    /usr/share/ghostscript/fonts/

Ghostscript lib   --with-gslib=no       no

JBIG              --with-jbig=yes              no

JPEG v1           --with-jpeg=yes              yes

JPEG-2000         --with-jp2=yes               yes

LCMS              --with-lcms=no        no

Magick++          --with-magick-plus-plus=no   no

PERL              --with-perl=no               no

PNG               --with-png=yes               yes

TIFF              --with-tiff=yes              yes

TRIO              --with-trio=no        no

Windows fonts     --with-windows-font-dir=     none

WMF               --with-wmf=no                no

X11               --with-x=no                  no

XML               --with-xml=yes               yes

ZLIB              --with-zlib=yes              yes

 

X11 Configuration:

 

  Not using X11.

 

Options used to compile and link:

  CC       = gcc -std=gnu99

  CFLAGS   = -O2 -pipe -Wall

  CPPFLAGS = -I/usr/include/freetype2 -I/usr/include/libxml2

  CXX      = g++

  CXXFLAGS = -O2 -pipe

  DEFS     = -DHAVE_CONFIG_H

  LDFLAGS  = -L/usr/lib -L/usr/lib

  LIBS     = -ltiff -lfreetype -ljasper -ljpeg -lpng -lbz2 -lxml2 -lz -lm

 

7.    Führen Sie jetzt die Kompilierung des Programmes durch:

SLES11:~ # make

Hinweis  Sie müssen nicht „make install“ ausführen, da wir die meisten Komponenten von GraphicsMagick für einen TYPO3 Installation nicht benötigen.

8.    Da wir für TYPO3 nur das Programm „gm“ benötigen reichte es aus, wenn wir diese Datei in ein ausführbares Verzeichnis kopieren.
Wenn ein lokaler Server verwendet wird, kann die Datei „gm“ aus dem Verzeichnis „utilities“ am besten in das Verzeichnis "/usr/local/bin" kopiert werden, dort sucht auch das TYPO3 Install Tool automatisch nach dem Grafikprogramm.

SLES11:~ # cp utilities/gm /usr/local/bin/

Wenn es sich um einen gehosteten Server handelt kann aber auch, unter dem Web Server Homeverzeichnis "htdocs/", ein eigenes Unterverzeichnis "gm" angelegt werden. Danach die Dateien aus jeweiligem Quellverzeichnis in dieses „gm“ Verzeichnis per FTP kopieren. Die Pfade für den Aufruf müssen im TYPO3 Install Tool dann angepasst werden.

9.    Für die delegierte Ausführung von Programmen, durch das GraphicsMagick Programm, müssen Sie  jetzt noch die Datei „delegate.mgk“ aus dem Verzeichnis „magic“ in das Verzeichnis „/usr/local/bin“ kopieren.

SLES11:~ # cp config/delegates.mgk /usr/local/bin/

Für GraficsMagick Versionen unterhalb von V1.2.x müssen zusätzlich auch noch die Datei „magic.mgk“ kopieren.

SLES11:~ # cp config/magic.mgk /usr/local/bin/

10. Testen Sie auf einem lokalen Server, ob danach „gm“ ohne Pfadangabe in einem Terminalfenster (nicht vom Pfad „/usr/local/bin/“) aufgerufen werden kann.

SLES 11 :~ # gm -version

GraphicsMagick 1.1.15 2009-04-01 Q8 http://www.GraphicsMagick.org/

Copyright (C) 2002-2009 GraphicsMagick Group.

Additional copyrights and licenses apply to this software.

See http://www.GraphicsMagick.org/www/Copyright.html for details.

 

11. Wenn Sie den Safemode (save_mode) von PHP aktiviert haben, so müssen Sie als Verzeichnis für Ausführbare Dateien in der php.ini folgendes eingeben:

..

safe_mode = on

safe_mode_exec_dir = /usr/local/bin/

 

6.    Damit GraphicsMagick unter TYPO3 verwendet wird, müssen Sie im TYPO3 Install Tool unter „All configuration" den Parameter „im_version_5“ auf „gm“ setzen.
Klicken Sie danach am Ende der Seite auf „Write to localconfig.php“.

 

Damit können jetzt die GraphicsMagick Programme über PHP gestartet werden und auch TYPO3 verwendet für die Grafikverarbeitung GraphicsMagick.

Hinweis  Unter GraphicsMagick haben bei mir die Tests für „niceText“ zwar funktioniert, aber die erzeugten Grafiken waren wesentlich größer.

 

8.2.1           Testen von „Delegate“ in GraphicsMagick

Eine Funktion, die oft Problem bei der GraphicsMagick Installation verursacht ist die „Delegate“ einer Grafikbearbeitung, welche durch den Befehl „gm“ aufgerufen wird. In diesem Fall sucht „gm“ die Datei „magic.mgk“ oder „delegates.mgk“, da in diesen Dateien das richtige Programm und die Scripts für die Ausführung der Grafikbearbeitung hinterlegt sind.

Dabei kann es sein, dass die lokale Ausführung des „gm“ Befehles in einem Terminalfenster ohne Probleme funktioniert, aber die Ausführung über ein PHP Script einen Fehler ausgibt.

Die häufigste Ursache für diesen Fehler liegt an der Eigenheit, dass PHP die beiden Dateien „magic.mgk“ und „delegates.mgk“ in dem Verzeichnis sucht, von dem das PHP Script gestartet wurde.

 

8.2.1.1          Prüfen von „Delegate“ in einem Terminalfenster

Zur Ausführung des Tests wird eine PDF Datei, benötigt, diese sollte nicht allzu groß sein, da dies für das Ergebnis nicht ausschlaggeben  ist. Normalerweise sollte auch die Version der PDF Datei für diesen Test keine Rolle spielen, wenn es aber Probleme bei den Test gibt, könnten Sie den Test auch mit anderen Versionen einer PDF Datei wiederhohlen.

 

Kopieren Sie die PDF Datei in das Verzeichnis „/srv/www/htdocs/“ Ihres Webserver. Diese Datei wird dann auch für alle nachfolgenden Test verwendet. Der Name der PDF Datei welche hier verwendet wird ist „doc.pdf“, dieser Name muss durch den Namen Ihrer PDF Datei ersetzt werden.

Setzen Sie die Zugriffsrechte auf diese Datei auf „Lesen“ für alle Benutzer.

 

Um „Delegate“ in einem Terminalfenster zu testen, geben Sie folgende Befehlszeile in das Terminalfenster ein:

 

SLES 11 :~ # /usr/local/bin/gm identify /srv/www/htdocs/doc.pdf

 

Als Ergebnis sollten Sie folgende Ausgabe erhalten:

 

/srv/www/htdocs/doc.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4m 0.040u 0:01

 

Wenn Sie folgende Fehlermeldung erhalten wird die „delegate.mgk“ nicht gefunden:

 

/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory].

 

Testen Sie die Eingabe  eines Suchpfades für Konfigurationsdateien (*.mgk) folgender Eingabe im Terminalfenster:

SLES 11 :~ # MAGICK_CONFIGURE_PATH=/usr/local/bin

SLES 11 :~ # export MAGICK_CONFIGURE_PATH

 

Wenn der obige Test jetzt funktioniert, erstellen oder bearbeiten Sie die Datei „/etc/bash.bashrc.local“ und fügen Sie folgende Zeile ein, damit die Variable bei jedem Start zugewiesen wird:

 

SLES 11 :~ # vi /etc/bash.bashrc.local

 

Drücken Sie jetzt <Esc> und danach <i> damit zum Insert Modus gewechselt wird.

 

Fügen Sie jetzt folgende Zeile ein:

MAGICK_CONFIGURE_PATH=/usr/local/bin

 

Wechseln jetzt in den Command Modus <Esc> und danach <:> (Doppelpunkt).

Speichern Sie die Datei durch Eingabe von „wq“ und Enter.

 

Starten Sie danach den Apache Server neu „rcapache2 restart“.

 

8.2.1.2          Prüfen von „Delegate“ mit einem PHP Script

 

Erstellen Sie ein PHP Script mit dem Namen „gm-test.php“ im Verzeichnis „/srv/www/htdocs/“ Ihres Webservers:

<?php

system("gm identify /srv/www/htdocs/doc.pdf[0] 2>&1");

?>

 

Führen Sie das Script dann über einen Browser auf dem Server aus:
http://localhost/gm-test.php

 

Hinweis  Wenn Sie auf das Verzeichnis „htdocs“ nicht direkt zugreifen können, nehmen Sie ein Unterverzeichnis auf welches Sie Zugriff haben.

 

Als Ergebnis sollten Sie folgendes erhalten, wenn alles funktioniert:

 

/srv/www/htdocs/doc.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4m 0.000u 0:01

 

Wenn Sie folgende Fehlermeldung erhalten, funktioniert „Delegate“ unter PHP nicht:

 

/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory].

 

Hinweis  Wenn Sie in PHP den „safe_mode“ aktiviert haben, müssen Sie den Pfad für in welchen sich die „gm“ Datei befindet, in der „php.ini“ mit „safe_mode_exec_dir“ festlegen.

 

Eine andere Ursache könnte sein, dass die Umgebungsvariable für GraphicsMagick in PHP nicht übernommen wurde. Suchen Sie in der „phpinfo()“ die „Environment“ Variable „MAGICK_CONFIGURE_PATH“.

 

 

Ist die Variable „MAGICK_CONFIGURE_PATH“ nicht vorhanden, so wurde diese vielleicht nicht als globale Variable definiert. Vielleicht wurde der Apache Server nach der Definition nicht neu gestartet. Damit die Umgebungsvariable beim Neustart vom Linux Server geladen wird, sollte diese in die Datei „/etc/bash.bashrc.local“ eingetragen werden.

 

 

8.2.1.3          Prüfen von „Delegate“ mit PHP Script im TYPO3 Verzeichnis

 

Erstellen Sie ein PHP Script mit dem Namen „gm-test-typo3.php“ im Verzeichnis „/srv/www/htdocs/“ Ihres Webservers:

<?php

system("gm identify /srv/www/htdocs/cms/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf[0] 2>&1");

?>

 

Hinweis  Wobei cms in dem Script dem Pfad Ihrer Typo3 Installation entspricht.

 

Führen Sie das Script dann über einen Browser auf dem Server aus:
http://localhost/cms/gm-test-typo3.php

 

Als Ergebnis sollten Sie folgendes erhalten, wenn alles funktioniert:

 

/srv/www/htdocs/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4m 0.000u 0:01

 

Wenn Sie folgende Fehlermeldung erhalten, funktioniert „Delegate“ nicht, suchen Sie nach einer Lösung unter dem Kapitel „Fehler Unable to access configuration file (delegates.mgk) [No such file or directory]“:

                                                                                                                                                

/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory].

 

 


8.2.1.4          Prüfen von „Delegate“ mit dem TYPO3 Install Tool

 

Sehen Sie dazu die Anleitung unter Kapitel „6.4 TYPO3 Graphiktests durchführen“

 

 

8.2.2           Fehler Install GraphicsMagick

 

8.2.2.1          Fehler beim „./configure“ kommt „C compiler cannot create executables“

 

SLES11:~/GraphicsMagick-1.1.15 # ./configure --enable-static --disable-shared --with-tiff --without-perl --without-magick-plus-plus --without-x --without-fpx --without-threads --without-dps --without-lcms --without-trio --without-wmf --disable-installed --enable-ltdl-convenience --enable-magick-compat CC=gcc CFLAGS='-O2 -pipe' LDFLAGS= LIBS= CXX=g++ CXXFLAGS='-O2 -pipe'

configure: WARNING: unrecognized options: --enable-ltdl-convenience

configuring GraphicsMagick 1.1.15

checking build system type... x86_64-unknown-linux-gnu

checking host system type... x86_64-unknown-linux-gnu

checking target system type... x86_64-unknown-linux-gnu

checking whether build environment is sane... yes

checking for a BSD-compatible install... /usr/bin/install -c

checking for a thread-safe mkdir -p... /bin/mkdir -p

checking for gawk... gawk

checking whether make sets $(MAKE)... yes

checking for gcc... gcc

checking whether the C compiler works... no

configure: error: in `/root/GraphicsMagick-1.1.15':

configure: error: C compiler cannot create executables

See `config.log' for more details.

SLES11:~/GraphicsMagick-1.1.15 #

 

Abhilfe:

Es fehlt das „C++“ Paket für die Erzeugung der Ausführbaren Dateien (Executables).

Installieren Sie das Paket über den YaST und suchen Sie nach „gcc-c++“ und Installieren Sie das Paket. Führen Sie danach den „./configure“ nochmals aus.

 

8.2.2.2          Fehler beim „./configure“ werden in der „Delegate Configuration“ immer „no“ angezeigt

 

Bei allen Grafik- und Komprimierfunktionen wird in der Konfiguration immer „no“ angezeigt.

 

Delegate Configuration:

BZLIB             --with-bzlib=yes                          no

DPS               --with-dps=no                              no

FlashPIX          --with-fpx=no                            no

FreeType 2.0      --with-ttf=yes                         no (failed tests)

Ghostscript       None                         gs (8.62)

Ghostscript fonts --with-gs-font-dir=default    /usr/share/ghostscript/fonts/

Ghostscript lib   --with-gslib=no                       no

JBIG              --with-jbig=yes             no

JPEG v1           --with-jpeg=yes                        no

JPEG-2000         --with-jp2=yes                       no

LCMS              --with-lcms=no          no

Magick++          --with-magick-plus-plus=no                 no

PERL              --with-perl=no            no

PNG               --with-png=yes            no

TIFF              --with-tiff=yes                no

TRIO              --with-trio=no                no

Windows fonts     --with-windows-font-dir=   none

WMF               --with-wmf=no            no

X11               --with-x=no                    no

XML               --with-xml=yes             no

ZLIB              --with-zlib=yes              no

 

Ursache:

Beim Ausführen von „./configure“ kommt bei alle Überprüfungen von „*.h“ Dateien wie z.B. „zlib.h“, „bzlib.h“, „png.h“, „jconfig.h“, „jpeglib.h“, „freetyp-config.h“, „tiff.h“ etc. immer in der Zeile „presence….no“. D.h. die Dateien werden nicht gefunden.

 

checking for ZLIB support ...

checking zconf.h usability... no

checking zconf.h presence... no

checking for zconf.h... no

checking zlib.h usability... no

checking zlib.h presence... no

checking for zlib.h... no

checking for compress in -lz... no

checking for uncompress in -lz... no

checking for deflate in -lz... no

checking for inflate in -lz... no

checking for gzseek in -lz... no

checking for gztell in -lz... no

checking if ZLIB package is complete... no

checking for BZLIB support ...

checking bzlib.h usability... no

checking bzlib.h presence... no

checking for bzlib.h... no

checking for BZ2_bzCompress in -lbz2... no

checking for BZ2_bzDecompress in -lbz2... no

checking if BZLIB package is complete... no

checking for X... disabled

checking for PNG support ...

checking png.h usability... no

checking png.h presence... no

checking for png.h... no

checking for png_get_io_ptr in -lpng... no

checking if PNG package is complete... no

checking for JPEG support ...

checking jconfig.h usability... no

checking jconfig.h presence... no

checking for jconfig.h... no

checking jerror.h usability... no

checking jerror.h presence... no

checking for jerror.h... no

checking jmorecfg.h usability... no

checking jmorecfg.h presence... no

checking for jmorecfg.h... no

checking jpeglib.h usability... no

checking jpeglib.h presence... no

checking for jpeglib.h... no

checking for jpeg_read_header in -ljpeg... no

checking for JPEG library is version 6b or later... no

checking if JPEG package is complete... no

checking for JPEG version 2 support ...

checking jasper/jasper.h usability... no

checking jasper/jasper.h presence... no

checking for jasper/jasper.h... no

checking for jas_stream_fopen in -ljasper... no

checking if JPEG version 2 support package is complete... no

checking for FreeType 2.0 ...

checking for freetype-config... no

checking for FT_Init_FreeType in -lfreetype... no

checking ft2build.h usability... no

checking ft2build.h presence... no

checking for ft2build.h... no

checking for freetype/freetype.h... yes

checking if FreeType package is complete... no -- some components failed test

checking for TIFF support ...

checking tiff.h usability... no

checking tiff.h presence... no

checking for tiff.h... no

checking tiffio.h usability... no

checking tiffio.h presence... no

checking for tiffio.h... no

checking for TIFFOpen in -ltiff... no

checking for TIFFClientOpen in -ltiff... no

checking for TIFFIsByteSwapped in -ltiff... no

checking for TIFFReadRGBATile in -ltiff... no

checking for TIFFReadRGBAStrip in -ltiff... no

checking if TIFF package is complete... no

checking for JBIG support ...

checking jbig.h usability... no

checking jbig.h presence... no

checking for jbig.h... no

checking for jbg_dec_init in -ljbig... no

checking if JBIG package is complete... no

checking for XML support ...

checking for xml2-config... no

checking libxml/parser.h usability... no

checking libxml/parser.h presence... no

checking for libxml/parser.h... no

checking for xmlParseExternalEntity in -lxml2... no

checking if XML package is complete... no

checking if WMF package is complete... no

 

Abhilfe:

Installieren Sie bevor Sie den Befehl “./configure“ eingeben alle notwendigen „devel“-Pakete:
„freetype2-devel“, „gd-devel“,“glibc-devel“,„liblcms-devel“,„libtiff-devel“, „libpng-devel“,„libjpeg-devel“, „libjasper-devel“, „libzip-devel“, „libbz2-devel“ „libxml2-devel“, „perl-Devel-CoreStack“, „zlib-devel“

 

8.2.2.3          Fehler beim „make“ kommt „’strcpy’ was not declared in this scope“

 

Geometry.cpp:192: error: 'strcpy' was not declared in this scope

make[3]: *** [Geometry.lo] Fehler 1

make[3]: Leaving directory `/root/GraphicsMagick-1.1.15/Magick++/lib'

make[2]: *** [all-recursive] Fehler 1

make[2]: Leaving directory `/root/GraphicsMagick-1.1.15/Magick++/lib'

make[1]: *** [all-recursive] Fehler 1

make[1]: Leaving directory `/root/GraphicsMagick-1.1.15/Magick++'

make: *** [all-recursive] Fehler 1

 

Ursache:

Dieser Fehler ist bei mir aufgetreten wenn der “./configure“ Befehl ohne die Optionen ausgeführt wird.

 

Abhilfe:

Führen Sie den „./configure“ mit allen angeführten Optionen aus:

SLES 11 :~# ./configure --enable-static --disable-shared --with-tiff --without-perl --without-magick-plus-plus --without-x --without-fpx --without-threads --without-dps --without-lcms --without-trio --without-wmf --disable-installed --enable-ltdl-convenience --enable-magick-compat CC=gcc CFLAGS='-O2 -pipe' LDFLAGS= LIBS= CXX=g++ CXXFLAGS='-O2 -pipe'

 

8.2.2.4          Fehler „/usr/local/bin/gm identify:Request did not return an image.”

 

Es wurde eine PDF Datei in das Verzeichnis “/srv/www/htdocs/” kopiert, trotzdem kommt beim Aufrufen von „gm indentify“ eine Fehlermeldung.

 

SLES11:~/GraphicsMagick-1.1.15 # /usr/local/bin/gm identify /srv/www/htdocs/doc.pdf

/usr/local/bin/gm identify: Request did not return an image.

 

Abhilfe:

Kontrollieren Sie den Namen der PDF Datei im Verzeichnis „/srv/www/htdocs/“. Eventuell haben Sie einen anderen Namen für die PDF Datei vergeben.

 

 

8.2.2.5          Fehler „Unable to access configuration file (delegates.mgk) [No such file or directory]“

 

Kopieren Sie in das Verzeichnis „/srv/www/htdocs/“ Testweise ein PDF Dokument und benennen Sie es „doc.pdf“ (der Name ist Prinzip egal, muss nur beim Befehl eigegeben werden).

Wenn in einem Terminal Fenster, außerhalb des Verzeichnisses „/usr/local/bin/“ der Befehl „gm identify“ Befehl eingegeben wird, erscheint die nachfolgende Fehlermeldung:

 

SLES 11 :~ # /usr/local/bin/gm identify /srv/www/htdocs/doc.pdf

/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory].

 

Ursache:

Wenn im Verzeichnis „usr/local/bin/“ die Dateien „delegate.mgk“ und „magic.mgk“ vorhanden und Leserechte auf die Dateien vorhanden sind, so ist der wahrscheinlichste Fehler dafür, dass der Suchpfad für die Konfigurationsdateien (*.mgk) nicht stimmt. Der Suchpfad wird durch die Umgebungsvariable „MAGICK_CONFIGURE_PATH“ gesetzt. Eventuell ist die Umgebungsvariable nicht vorhanden oder der Pfad ist falsch.

 

Abhilfe:
Fügen in die Datei „/etc/bash.bashrc.local“ folgende Zeile ein:

MAGICK_CONFIGURE_PATH=/usr/local/bin

 

 

8.2.2.6          Fehler bei RPM Installation von GraphicsMagic 1.3.12 „warning:…“

 

Beim Versuch GraphicsMagick-1.3.12, welches über folgenden Download geladen wurde:
http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/1.3.12/GraphicsMagick-1.3.12-1.src.rpm
zu installieren, kommen nach Eingabe des Befehls nachfolgende Warnungen und die Installation wir nicht durchgeführt.

 

SLES 11 :~ # rpm -i GraphicsMagick-1.3.12-1.src.rpm

warning: user bfriesen does not exist - using root

warning: group home does not exist - using root

warning: user bfriesen does not exist - using root:

warning: group home does not exist - using root:

 

Ursache:

Vermutlich wird diese Version unter dem eingesetzten Linux beim SLES11 noch nicht unterstützt, oder die Kompilierung ist für diese Linux Version nicht vorgesehen.

 

Abhilfe:

Greifen Sie auf eine ältere Version von GraphicsMagick zurück, oder verwenden Sie einen Tarball (Endung *.tar.gz“) welchen Sie selbst kompilieren können.

 


8.3        Installation von ImageMagick

Ein anderes Paket zur Graphikumwandlung wäre ImageMagick, das Sie anstelle von GraphicsMagick benutzen können

 

1.    Prüfen Sie, ob Sie die ImageMagick Programme "combine", "convert" und "identify" direkt (ohne Pfadangabe) gestartet werden können. Wenn die Befehle nicht funktionieren müssen Sie ImageMagick nachinstallieren. Von TYPO3 Enthusiasten wird immer die Verwendung der ImageMagick Version 4.2.9 empfohlen.
Download von:
http://files.filefront.com/ImageMagick+429/;5098936;/fileinfo.html/1/1
oder
http://www.website4all.de/support/downloads.html

Das RPM Paket können Sie von
http://sourceforge.net/project/showfiles.php?group_id=20391
oder mit einem „wget“-Download von
„wget http://typo3.mitka.us/filez/typo3-ImageMagick4-4.2.9-1.3.i386.rpm“

2.    Wenn Sie ein Tarball-Paket beinhaltet die Dateiendung „tar“ down geladen haben müssen Sie diese zuerst mit folgenden Befehl entpacken:

SLES11:~ # tar xzf imagemagick-4.2.9_i386-static-3.tar.gz

Wenn Sie das RPM Pakte downgeladen haben installieren Sie wie folgt:

SLES11:~ # rpm –ivh typo3-ImageMagick4-4.2.9-1.3.i386.rpm

3.    Kopieren Sie danach, wenn lokalen Server verwendet wird, die Dateien in folgendes Verzeichnis. Die beste Wahl unter Linux wäre das Verzeichnis "/usr/local/bin" weil das TYPO3 Install Tool automatisch in diesem Verzeichnis sucht.

Beim entpackten Tarball mit:
SLES11:~ # cp imagemagick-4.2.9/bin/* /usr/local/bin

Beim RPM Paket mit:
SLES11:~ # cp /usr/lib/typo3/ImageMagick4/* /usr/local/bin

Wenn es sich um einen gehosteten Server handelt kann aber auch unter dem Web Server Homeverzeichnis "htdocs/" ein eigenes Unterverzeichnis "im" angelegt werden. Danach die Dateien aus jeweiligem Quellverzeichnis in dieses „im“ Verzeichnis per FTP kopieren.

4.    Für die delegierte Ausführung von Programmen, durch das ImageMagick Programm, müssen Sie  jetzt noch die Dateien „delegate.mgk“ aus dem Verzeichnis „share“ in das Verzeichnis „/usr/local/bin“ kopieren.

SLES11:~ # cp imagemagick-4.2.9/share/delegates.mgk /usr/local/bin/

oder beim RPM

SLES11:~ # cp /usr/lib/typo3/ImageMagick4/delegates.mgk /usr/local/bin

5.    Testen Sie auf einem lokalen Server, ob danach „combine“, „convert“ oder „identify“ ohne Pfadangabe in einem Terminalfenster aufgerufen werden kann.

6.    Wenn Sie den Safemode (save_mode) von PHP aktiviert haben so müssen Sie als Verzeichnis für Ausführbare Dateien in der php.ini folgendes eingeben:

..

Safe_mode = on

safe_mode_exec_dir = /usr/local/bin/

 

Damit können die ImageMagick Programme über PHP gestartet werden.

 

 

8.3.1.1          Fehler keine Grafiken unter ImageMagick Installation

 

Nach Installation und Einrichtung von ImageMagick werden bei den Grafiktests keine Grafiken angezeigt. Alle Tests laufen auf Fehler.

 

Abhilfe:

Deaktivieren Sie die Option „[im_useStripProfileByDefault]“ im Install Toll bei „All Configuration“.

 



8.4        TYPO3 Graphiktests durchführen

WICHTIG Wenn Sie die Tests schon mehrmals durchgeführt haben, löschen Sie die temporären Dateien (Bilder) der vorherigen Tests aus dem Verzeichnis „typo3temp“ und „typo3temp/pics“. Diese Dateien beginnen alle mit „install…“. Ansonsten erhalten Sie bei den Tests keine korrekten Ergebnisse. Zusätzlich speichern Sie wenn Sie von GraphicsMagick auf eine andere Version, oder auf ImageMagick wechseln, unter „Basic Configuration“ mit der Schaltfläche „Update localconf.php“ ihre Konfiguration nochmals ab.

 

1.    Kontrollieren Sie danach indem Sie das TYPO3 „Install Tool“ starten die Funktion von ImageMagick.

2.    Kopieren Sie dazu eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „/srv/www/htdocs/cms/typo3conf“ oder erstellen Sie auf einen SLES11 Server mit ‚“touch ENABLE_INSTALL_TOOL“ die Datei im Verzeichnis „typo3config“.

3.    Starten sie das TYPO3 „Install Tool“ wenn Sie direkt am Server arbeiten mit http://localhost/typo3/install, auf einen Server eines externen Internet Providers mit http://www.ihredomain.ihrdomainendung/typo3/install

Hinweis  Bei sehr vielen Installationen auf Servern eines Internet Providers ist das Verzeichnis „install“ überhaupt nicht vorhanden. Um die Tests auf solchen Installationen durchzuführen, müssten Sie das „install“ Verzeichnis von einer lokalen Kopie von TYPO3 (mit der gleichen Versionsnummer) auf den Server kopieren.

4.    Gehen Sie jetzt zuerst auf den Punkt „Basic Configuration“ und Kontrollieren Sie ob der Anzeige überall grüne Überschriften mit dem Häkchen   angezeigt bekommen.

5.    Alle Zeilen mit blauen Überschriften mit dem Symbol beinhalten zusätzliche Informationen zum installierten System oder zu den Tests.

6.    Wenn Sie eine gelbe Überschrift mit Warnsymbol  angezeigt bekommen, wurde beim Test einen Abweichung oder ein Fehler festgestellt. Lesen Sie dann die zugehörigen Texte, diese beinhalten Informationen und Ratschläge wie es zu diesem Zustand gekommen ist, oder wie Sie diesem möglichen Fehler beheben können.

7.    Wenn Sie rote Überschriften mit dem Symbol  ist ein Fehler aufgetreten welcher behoben werden muss.

8.    Sollte unter Punkt „Basic Configuration“ alles Ok sein gehen Sie weiter zu Punkt „Image Processing“. Hier können Sie die Funktion der Grafikfunktionen testen.
Dabei sollten die angezeigten Bilder auf der rechten und linken Seite jeweils gleich sein außerdem sollte die Dateigröße der Bilder nicht zu viel abweichen.

 

8.4.1           Testen der Grafiken unter GraphicsMagick

TYPO3 empfiehlt die Verwendung von GIF-Dateien den nicht alle Browser unterstützen im Moment die Verwendung von PNG-Dateien.

Wenn Sie aber GIF-Dateien verwenden, so wird die Aktivierung der LZW Komprimierung empfohlen, die GIF-Dateien komprimiert werden.

 

 

Gehen Sie jetzt zum Ende der Seite hier sollte folgendes angezeigt werden:

 

 

Mit „Update localconf.php“ können Sie Einstellungen übernehmen.

 

Nach dieser Anzeige sollte mit der Installation alles in Ordnung sein.  Sie können jetzt die Grafikfunktionen im TYPO3 Install Toll unter „Images Processing“ überprüfen.

 

Im TYPO3 Install Tool auf der Seite „Image Processing“ wird folgendes angezeigt:

 

Unterhalb befindet sich das Menü für die Grafiktest, welche Sie der Reihe nach ausführen sollten:

 

Dabei sollten die angezeigten Bilder auf der rechten und linken Seite jeweils gleich sein, außerdem sollte die Dateigröße der Bilder nicht zu viel abweichen.

 

8.4.2           Testen der Grafiken unter ImageMagick

TYPO3 empfiehlt die Verwendung von GIF-Dateien den nicht alle Browser unterstützen im Moment die Verwendung von PNG-Dateien.

Wenn Sie aber GIF-Dateien verwenden, so wird die Aktivierung der LZW Komprimierung empfohlen, die GIF-Dateien komprimiert werden.

 

 

Setzen Sie ein Häkchen bei „Check LZW capabilities“ und geben Sie den Pfad zu Ihren ImageMagick Dateien ein. Klicken Sie danach auf „Send“, dann sollten die Zeile „gif_capability“ mit „LZW“ im Informationsfenster erscheinen.

 



8.5        Fehler bei den Graphiktests

 

8.5.1.1          Fehler „No ImageMagick installation available“ unter „Basic Configuration“

 

 

Ursache:

1.    ImageMagick (oder GraphicsMagick) nicht installiert oder fehlerhaft installiert. Prüfen Sie, ob Sie die ImageMagick Programme "combine", "convert" und "identify" direkt (ohne Pfadangabe) gestartet werden können.

2.    Haben Sie den Safemode (save_mode) von PHP aktiviert und den Pfad der auf die ImageMagick Dateien verweist, nicht unter "safe_mode_exec_dir" eintragen.

3.    Bei meiner Installation lag die Fehlermeldung daran, dass bei aktivierten AppArmor der SLES11 Konfiguration. Es war das vordefinierte „usr.sbin.httpd2-prefork“ Profil vom Verzeichnis „/etc/apparmor/profiles/extras/“ in das Verzeichnis „/etc/apparmor.d“ kopiert worden. Und das Profil war auf „enforce“ gestellt.

4.    Ursache könnten auch mehrfache Einträge für ImageMagick in der Datei „typo3conf/localconf.php“ sein. Bei mir ist dies z.B. nach einen Update und einem Transfer der TYPO3 Seite auf einen anderen Server passiert.

 

 

Abhilfe:

Je nach festgestellter Ursache gehen Sie nach den gleichen Punkt vor.

 

1.    Für Installation von ImageMagick siehe Kapitel „Installation von ImageMagick“

2.    Wenn Sie den PHP Safemode (save_mode) aktiviert haben muss der Pfad für ImageMagick beim Parameter "safe_mode_exec_dir“ der Pfad zu den ImageMagick Dateien eingetragen werden z.B. „/usr/local/bin"

3.    Über YaST „Novell AppArmor“ - „AppArmor-Kontrollleiste“ unter „Profilmodus konfigurieren“ auf die Schaltfläche „Konfigurieren“ klicken. Wählen Sie das Profil „usr.sbin.httpd2-preford“ und wechseln Sie den Modus auf „complain“. Profil danach Aktualisieren und wieder auf „enforce“ stellen.

4.    Entfernen Sie eventuell Mehrfacheinträge direkt aus der Datei „localconf.php“ mit einem Editor. Achten Sie dabei auf doppelte Einträge von „[im]“, „[im_path]“, etc.

 

 

 

Testen von ImageMagick:

Danach das „Install Tool“ von TYPO3 öffnen und die Funktion von ImageMagick kontrollieren. Folgende Anzeige unter „Basic Configuration“ sollte erscheinen:

 

 

oder unter „4: Image Processing“ sollte folgendes stehen

 

 

 

8.5.1.2          Fehler „Test skipped“ erscheint bei allen „Image Processing“ Tests

 

 

Ursache:

1.    Entweder ist ImageMagick (oder GraphicsMagick) auf dem Server nicht installiert

2.    Es könnte der Safemode (save_mode = On) von PHP aktiviert in der Datei „/etc/php5/apache2/php.ini“ sein. Wenn der Safemode von PHP aktiviert ist, müssen Sie den Pfad für zu den ImageMagick Dateien unter „safe_mode_exec_dir“ eintragen.

3.    Vielleicht ist ImageMagick unter „All Configuration“ nicht aktiviert oder der ImageMagick Pfad wurde dort falsch eingetragen.

 

Abhilfe:

1.    Prüfen Sie, ob Sie die ImageMagick Programme „combine“, „convert“ und „identify“ direkt gestartet werden können.

2.    Wenn Sie den PHP Safemode (save_mode) aktiviert haben, muss der Pfad für ImageMagick im folgenden Parameter eingetragen werden:
„safe_mode_exec_dir = /usr/local/bin/

Hinweis  Der letzte Schrägstrich ist Wichtig (..../) außerdem können Sie nur ein einziges Verzeichnis angeben. Danach den Apache Server neustarten mit „rcapache2 restart“.

3.    Aktivieren Sie die ImageMagick Funktion unter „All Configuration“:
[GFX][image_processing] = 1
[GFX][im] = 1
[GFX][im_path] = /usr/local/bin/
[GFX][im_path_lzw] = /usr/local/bin/

 

Wenn Sie einen gehosteten Server verwenden, muss dies durch den Provider durchgeführt werden, außer der Provider stellt eine „php.ini“ zur Selbstkonfiguration zur Verfügung.

 

8.5.1.3          Fehler bei den „Image processing“ Tests kommen nur Sonderzeichen

 

Nach Aufruf eines „Image processing“ Tests kommen nur Sonderzeichen.

 

 

Ursache:

Zuvor wurde in der Datei „/etc/php5/apache/php.ini“ die Option „zlib.output_compression = On“ aktiviert. Danach wurden immer nur Sonderzeichen ausgegeben.

 

Abhilfe:

Schalten Sie die Option wieder auf „zlib.output_compression = Off“.

 

8.5.1.4          Fehler für PNG Grafiken werden im Backend keine Thumbnails angezeigt

 

Für PNG Bilder werden keine Thumb-Bilder erzeugt. Folgender Fehler wird im Backend angezeigt:

 

 

Ursache:

Die Konfiguration von GDLib“ für PNG Grafiken wurde nicht installiert oder ist nicht korrekt eingerichtet. Kontrollieren Sie im TYPO3 „Install Tool“ durch klicken auf „Image Processing“ die augenblicklichen Einstellungen der „Image Processing“ Komponenten.

Kontrollieren Sie auch im TYPO3 „Install Tool“ unter „All Configuration“ die folgende Option:

 

Abhilfe:

Kontrollieren Sie zuerst im TYPO3 „Install Tool“ die ImageMagick Funktionen unter Punkt „Image Processing“. Wenn Sie hier keinen Fehler haben gehen Sie auf Punkt „All Configuration“ und setzen Sie die Option:

 

[GFX][thumnails] = 1

 

Damit sollten die Grafiken angezeigt werden, wenn nicht noch ein anderes Problem mit der Grafikfunktion existiert.

 

8.5.1.5          Fehler die Schrift TrueType Test geht über die Farbfläche hinaus

 

 

Ursache:

Sie Verwenden die FreeType Version2 und bei den Einstellungen für Freetype wird folgendes angezeigt

“Freetype DPI: 72 (Should be 96 for Freetype 2)”

 

Abhilfe:

Setzen sie unter „1: Basic Configuration“ bei der Option

 

[GFX][TTFdpi]= 96

 

Klicken Sie danach auf “Update localconf.php”

 

 

 

8.5.1.6          Fehler bei „Read JPG“

 

 

Ursache:

In TYPO3 Install Tool wurde Testweise die Einstellung „[GFX][jpg_quality]“ von “70“ auf „100“ eingestellt. Danach wurde der Fehler bei allen „Reading image formats“ Test angezeigt.

 

Abhilfe:

Nach Änderung des Wertes im TYPO3 Install Tool unter „All Configuration“ auf den Wert [GFX][jpg_quality]=70 war wieder alles OK.

 

8.5.1.7          Fehler „Read PNG“ beim Test „Reading image formats“

 

Dieser Fehler tritt bei allen „Read“ Grafikformaten auf.

Hier wird bei der Testgenerierung die Optionen „+profile“ in der Kommandozeile verwendet.

 


Abhilfe:

Wenn Sie bei jeden Read Test einen Fehler bekommen sollten Sie wenn ImageMagick oder GraphicsMagick erkannt wird im TYPO3 Install Tool unter „All Configuration“ die Option:
[im_useStripProfileByDefault] = 0“ einstellen.

Damit wird der Eintrag „+profile“ aus der Kommandozeile entfernt und die Grafiktest sollten alle durchlaufen.

 

8.5.1.8          Fehler „Read TIF“ beim Test „Reading image formats“ mit GraphicsMagick

 

 

Ursache:

1.    Geben Sie in einem Terminalfenster „gm –version“ ein.
Suchen Sie in der Ausgabe die Zeile welche mit „TIFF“ beginnt, wenn dahinter ein „no“ steht wurde der TIFF Support nicht in das „gm“ Paket kompiliert.

Beispielausgabe mit „TIFF no“:

  Loadable Modules         no

  PNG                      yes

  TIFF                     no

  TRIO                     no

 

2.    Zweite Möglichkeit wäre das der TIIF Support nicht in das „gm“ Programm kompiliert werden kann, weil die Systemvoraussetzungen nicht vorhanden sind. Dies zeigt sich schon beim „configure…- -with-tiff …“ wenn folgendes am Bildschirm angezeigt wird:

checking for TIFF support ...

checking tiff.h usability... no

checking tiff.h presence... no

checking for tiff.h... no

checking tiffio.h usability... no

checking tiffio.h presence... no

checking for tiffio.h... no

checking for TIFFOpen in -ltiff... no

checking for TIFFClientOpen in -ltiff... no

checking for TIFFIsByteSwapped in -ltiff... no

checking for TIFFReadRGBATile in -ltiff... no

checking for TIFFReadRGBAStrip in -ltiff... no

checking if TIFF package is complete... no

 

Abhilfe:

1.    Kompilieren Sie das GraphicsMagick Paket neu mit dem Support für „TIFF“ Grafiken. Dazu müssen Sie den Parameter „--with-tiff“ beim „configure“ angeben.

2.    In diesem Fall müssen Die die Dateien welche für den TIFF Support notwendig sind, zuerst zur Verfügung stellen. Das sind die Pakete „tifflib“ und „tifflib-devel“ um eine korrekte Kompilierung  für GraphicsMagick durchzuführen.

 

8.5.1.9          Fehler „Read PCX“ beim Test „Reading image formats“

 

 

Ursache:

Dieser Fehler ist beim mir bei Einsatz einer Fehlerhaft kopilierten GraficsMagick Version aufgetreten.

 

Abhilfe:

Kompilieren Sie Ihre GraficsMagick Version nochmals neu mit der V1.1.15

                 

 


8.5.1.10       Fehler „Read TGA“ beim Test „Reading image formats“

 

 

Abhilfe:

Dieser Fehler kann mit dem Fehler „Read PNG“ gleichgesetzt werden in der Befehlzeile befindet sich „+profile“.

 

8.5.1.11       Fehler „Read PDF“ und „Read AI“ beim Test „Reading image formats“

 

 

oder

 

 

 

Ursache:

1.    Entweder ist Ghostscript (ghostscript-library-…) auf dem Server nicht installiert oder TYPO3 kann auf das Binär-Verzeichnis nicht zugreifen. Das Programm sollte sich in einem der Standardverzeichnisse (z.B. /usr/bin/) befinden. Prüfen Sie ob das Programm ohne Pfadangabe durch Eingabe von „gs -version“ gefunden wird.
Wenn sich das Ghostscript Programm mit folgender Anzeige meldet ist alle OK:

 

SLES 11 :# gs -version

ESP Ghostscript 8.15.3 (2006-04-19)

Copyright (C) 2004 artofcode LLC, Benicia, CA.  All rights reserved..

 

2.    Nachdem Ghostscript funktioniert, testen wir „Delegate“ vom Programmaufruf, indem Sie den angezeigten Befehl bei „Read PDF“ (durch kopieren) in ein Terminalfenster einfügen und ausführen:

 

SLES 11 :#/usr/local/bin/identify /srv/www/htdocs/rpw/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf[0]

/srv/www/htdocs/rpw/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf=>/tmp/magicol7JQW 595x842 DirectClass 12472b PDF 1s

 

Wenn sie die obige Ausgabe erhalten, wird der „Delegate“ ausgeführt, d.h. die Datei “delegate.mgk” (oder „magic.mgk“) wurde gefunden.

 

Wenn Sie nach Ausführung des Befehls folgende Fehler erhalten, kontrollieren Sie ob die Dateien „delegate.mgk“ und GraphicsMagick „magic.mgk“ vorhanden sind:

 

/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory].

 

3.    Kontrollieren Sie ob Sie die Umgebungsvariable für „MAGICK_CONFIGURE_PATH“  vorhanden ist. Bei manchen Installationen funktioniert der „Delegate“ nicht ohne diese Variable:

 

SLES 11 :~ # echo $MAGICK_CONFIGURE_PATH

/usr/local/bin

 

Wenn nichts angezeigt wird, wurde keine globale Umgebungsvariable für „MAGICK_CONFIGURE_PATH“ festgelegt. Siehe Kapitel „8.2.1.1 Prüfen von „Delegate“ in einem Terminalfenster“.

 

4.    Ein weiteres Problem könnte durch eine Tarball-Installation von ImageMagick zustande kommen. Kontrollieren Sie mit „gm –version“ mit welchen Einstellungen die Kompilierung von ImageMagick oder GraphicsMagick vorgenommen wurde.

 

Abhilfe:

1.    Installieren Sie Ghostscript bei SLES 11 das Paket „ghostscript-library-8.15.4-16.5“
SLES 11 -2 # rpm –ivh ghostscript-library-8.15.4-16.5

Mit folgenden Befehl können Sie feststellen von welchen Pakte „gs“ stammt:
SLES 11 :~ # rpm –qf /usr/bin/gs

2.    Kopieren Sie Datei „delegates.mgk“, oder für GraphicsMagick noch zusätzlich die „magic.mgk“, in das Verzeichnis in welchen sich die ausführbaren Dateien für ImageMagick und GraphicsMagick befinden.

Für das entpackten ImageMagick 4.2.9:

SLES 11 :~ # cp imagemagick-4.2.9/share/delegates.mgk /usr/local/bin/

 

Für den Tarball vom GraphicsMagick aus dem entpackten Verzeichnis:

SLES 11 :~ # cp config/delegates.mgk config/magic.mgk /usr/local/bin/

 

3.    Bei ImageMagick und GraphicsMagick können Sie die Umgebungsvariable für den Suchpfad permanent in der Datei „/etc/bash.bashrc.local“ durch folgende Zeile festlegen:

 

..

MAGICK_CONFIGURE_PATH=/usr/local/bin

 

Danach den Linux Server neu starten nicht vergessen.

WICHTIG   Unter SLES 11  darf die Definition nicht in der „/etc/profile.local“ erfolgen, da die Definition bei einem Server Neustart ansonsten nicht in PHP übernommen wird.

 

4.    Wenn das alles nichts hilft, müssen Sie eventuell ImageMagick oder GraphicsMagick nochmals neu installieren, oder ggf. diesen Fehler beim Internet Provider ein melden.

 

 

8.5.1.12       Fehler mit „Write GIF“ beim „Writing GIF and PNG“ Test


 

 

Ursache:

Als Ursache wird bei dem Test folgendes angezeigt.

 

Note on gif_compress() function:
The 'gif_compress' method used was 'IM'.
Previous filesize: 21 K. Current filesize:21 K

 

oder auch

 

Note on gif_compress() function:
The 'gif_compress' method used was 'GD'.
Previous filesize: 21 K. Current filesize:21 K

 

Dies bedeutet, dass keine Komprimierung über „IM“ oder „GD“ stattgefunden hat.

Die Ursache dieses Fehlers ist noch unklar.

 

Abhilfe:

 

In der „/etc/php5/apache/php.ini“ wurde die „zlib“-Komprimierung aktiviert

 

…:
zlib.output_compression = On

 

Danach wurde beim gleichen Test folgendes angezeigt:

 

Note on gif_compress() function:
The 'gif_compress' method used was ''.
Previous filesize: 21 K. Current filesize:21 K

 

Der Fehler konnte im Moment noch nicht behoben werden.

 

 

8.5.1.13       Fehler mit „Write PNG“ beim „Writing GIF and PNG“ Test

 

 

Ursache:

Durch die Aktivierung von Parameter [GFX][png_truecolor] wird die PNG Datei beim Schreiben wesentlich größer, als das Original. Aktivieren Sie diese Option nur wenn Sie wirklich TrueColor für PNG brauchen.

 

Abhilfe:

Den Wert [GFX][png_truecolor] = 0 damit funktionierte der „Write PNG“ Test wieder.

 

 


8.5.1.14       Fehler mit „PNG to PNG“ beim „Scaling Image“ unter GraphicsMagick

 

 

Abhilfe:

Eventuell wurde bei der Kompilierung von GraficsMagick die Funktion für „PNG“ nicht mit kompiliert. Sie sollten in nach Ausführen von „./configure“ auf die PNG Zeile achten:

PNG               --with-png=yes            no


Wenn in dieser Zeile „no“ steht müssen Sie vor der Kompilierung das Pakte „libpng-devel“ installieren.

 

 

8.5.1.15       Fehler mit „GIF to JPG“ beim „Scaling Image“

 

Dabei wir das erzeugte Bild mit schwarzen Hintergrund angezeigt.

 

 

Ursache:

Dieser Fehler ist bei mir bei der GraphicsMagick ab der Version 1.3.x aufgetreten. Bei älteren GraphicsMagick Versionen unter Version 1.3.x konnte der Fehler nicht festgestellt werden.

 

Abhilfe:

Verwenden Sie die GraphicsMagick Version ab 1.1.15

 

 


8.5.1.16       Fehler „Combining using a GIF mask“ unter ImageMagick

 

Dieser Fehler tratt bei mir beim Einsatz von ImageMagick 4.2.9 auf.

 

 

Abhilfe:

Deaktivieren Sie die Option „[gdlib_png]“ unter „All Configuration“.

 

8.5.1.17       Fehler „niceText“ mit TrueType oder „niceText“ mit Schatten

 

 

oder

 

 

Ursache:

Wenn Sie bei ImageMagick eine Version höher 4.2.9 verwenden oder bei Verwendung von GraphicsMagick 1.1.6 ist dieser Fehler aufgetreten. Sowie beim ImageMagick 5 sieht man kein Hard- oder Soft-Shadow des Textes.

 

Abhilfe:

Verwenden sie ImageMagick 4.2.9 oder GraphicsMagick ab Version 1.1.15

 

8.5.1.18       Fehler „File size very different from reference“ “ bei TrueType Font „niceText“

 

 

Ursache:

Der Fehler tritt besonders bei Verwendung von GraphicsMagick auf.

 

Abhilfe:

Im TYPO3 Install Tool unter „All Configuration“ folgende Einstellung umgestellt:

 

[GFX][gdlib_png] = 0

 

Danach wurde der Test korrekt beendet und die Grafik war gleich groß.

 

 

8.5.1.19       Fehler „File size very different from reference“ bei „niceText“ mit Shadow

 

 

Ursache:

Der Fehler tritt besonders bei Verwendung von GraphicsMagick auf.

Die Ursache des Fehlers ist noch unklar.

 

Abhilfe:

Mit der GraficsMagick Version 1.1.15 trat der Fehler aber nicht auf.


9    TYPO3 Installation Anpassung

9.1        Passwortsicherheit erhöhen („saltedpassword“)

Die Speicherung von Passwörtern in Klartext sollte unter allen Umständen vermieden werden. Hier wurde bis jetzt als Lösung eine Speicherung des Passwortes als sogenannter „Hash“ (Prüfsumme) Wert verwendet. Später beim Login, wird das eingegeben Klartextpasswort, auch wieder in den „Hash“ Wert umgrechnet und mit abgespeicherten „Hash“ Wert verglichen. Dies ist die bis jetzt verwendete Methode für den TYPO3 Backend Login.

 

In der Zwischenzeit stellte sich heraus, dass auch diese Methode in der heutigen Zeit nicht mehr genug Sicherheit bietet. Daher wurde eine zusätzliche Sicherheitstufe bei der Generierung des „Hash“ Wertes eingebaut und ein sogenanntes „Salt“ (Salz) zum „Hash“ hinzugefügt. Ein „Salt“ ist eine zufällige Zeichenkette, welche vor der Erstellung der Prüfsumme (Hash) an das Passwort angehängt wird.

 

Bereit seit der Version TYPO3 4.3 bietet sich die Verwendung der Systemextension „saltedpassword“ an, welche für das Backend und das Frontend funktioniert. Um den Übertragungsweg abzusichern wird nun nicht mehr eine „JavaScript“-Methode (TYPO3 Standard) verwendet, sondern es ist nun eine SSL Verbindung (https) oder die Extension „rsaauth“ notwendig.

 

9.1.1           Installation von „saltedpassword“

 

1.    Voraussetzung für die Extension „rsaauth“ ist das PHP Modul „OpenSSL“ notwendig.
Öffnen Sie „YaST“ und kontrollieren Sie ob die Linux Pakete für „OpenSSL“ installiert sind.




2.    Für PHP benötigen Sie noch zusätzlich das „php5-openssl“. Installieren Sie das Modul über den „YaST“ wenn es noch nicht vorhanden ist.



Starten Sie den Apache Server neu mit „rcapache2 restart“.

Hinweis  Bei neueren TYPO3 Installationen bei einem ISP sollten dieses Modul schon vorhanden und aktiviert sein.

3.    Die Extension „rsaauth“ und „saltedpassword“ werden seit der Verison TYPO3 4.3 schon als Systemextension mitgeliefert und müssen nur mehr durch klicken auf „Install Extension“ aktiviert werden.
Zuerste aktivieren wir die Extension „rsaauth



Wenn das PHP Modul „php5-openssl“ nicht installiert ist müssen Sie ein Pfad bei „Path to the temporary directory“ eingeben der sich ausserhalb Ihres Website Root Verzeichnisses (htdocs) befindet:



Hinweis  Wenn Sie das PHP Modul „php5-openssl“ verwenden, brauchen sie hier keinen Pfad festzulegen.

4.    Öffnen Sie jetzt das TYPO3 Install Tool und geben Sie bei der Option „[BE][loginSecurityLevel]“ und bei „[FE][loginSecurityLevel]“ jeweils „rsa“ ein.

In der „localconf.php“ sieht das ganze dann so aus:

 

$TYPO3_CONF_VARS['BE']['loginSecurityLevel'] = 'rsa';

$TYPO3_CONF_VARS['FE']['loginSecurityLevel'] = 'rsa';

 

Hinweis  Sie könnten bei „[FE][loginSecurityLevel]“ auch „normal“ (nicht empfohlen) eingeben. Besser ist es gleich überal „rsa“ Authentifizierung zu verwenden.

5.    Als nächstes Aktivieren Sie die Extension „saltedpassword“.



Hinweis  Für das Backend muss entweder „rsaauth“ aktiviert werden (siehe oben), oder im TYPO3 Install Tool die Option „[BE][lockSSL]“ auf einen Wert größer 0 gesetzt werden. Hier wird vorausgesetzt das Sie eine SSL Verbindung (https) zum Server möglich ist. In diesem Fall wird die Option „[FE][loginSecurityLevel]“ auf „normal“ eingestellt

Sie sollten danach folgendes angezeigt bekommen.




6.    Sie könnten jetzt noch in der Konfiguration der Extension festlegen, ob die Funktion „SaltedPassword“ für das Frontend und das Backend verwendet werden soll (nicht zu verwechseln mit der „rsaauth“). Außerdem können Sie die „Hashing Methode“ für die Passwörter festlegen. Standard ist „MD5 salted hashing (secure)“.



7.    Die Passwörter werden jetzt beim nächsten Login automatisch auf „SaltedPassword“ konvertiert.

8.    Wenn Sie gleich alle vorhandenen Passwörter auf „SaltedPasswort“ kovertieren wollen legen Sie einen neuen „Task“ an, welcher dies ausführt.
Wählen Sie aus der Navigation „Scheduler“ aus.



Klicken Sie auf „Add Task“.



Wählen Sie jetzt „Convert user password to salted hashes“ aus mit Typ auf „Single“.



Danach sollte der „Task“ wie folgt angezeigt werden. Klicken Sie auf den „Task“ und dann auf „Execute“.



9.    Sie können sich jetzt das Ergebnis über „phpMyAdmin“ in den Tabellen „be_user“ oder „fe_user“ ansehen:



Sie erkennen die konvertieren „SaltedPassword“ an den vorangestellten Tetxt „M$1$“.

 

9.1.1.1          Fehler im Backend nach aktivierung von „rsaauth“

 

Wenn Sie nach der Aktivierung der Extension „rasauth“ im Backend folgende Meldung erhalten

 

Ursache:

Zuerst einmal ist hier auf dem Server das PHP Modul „php5-openssl“ nicht installiert. Daher wird die Unterstützung mit einen CMD-Line Utility durchgeführt welche weniger sicher und lansamer ist als wenn das PHP Modul installiert wurde.
Zweitens wurde in der Konfiguration der Extension „rsaauth“ unter „Path to the temporary directory“ kein Pfad für temporären Dateien hinterlegt welche durch die Extension generiert werden. Dies ist ein Sicherheitsrisiko.

 

Abhilfe:

Sie können die Extension auch ohne das PHP Modul „php5-openssl“ verwenden, mit der Einschränkung das diese Methode nicht so sicher ist als wenn Sie das PHP Modul installiert haben.
Geben Sie unter „Path to the temporary directory“ einen Pfad ausserhalb Ihres Website Root (htdocs) Verzeichnisses ein z.B. „/srv/www/rsasltpswd/. Vergeben Sie dem Verzeichnis die Zugriffsberechtigung „0700“ und den Besitzer auf „wwwrun“:
SLES11:/srv/www # chown wwwrun:root rsasltpswd/

SLES11:/srv/www # chmod 0700 rsasltpswd/

 

Ersetzen Sie den Namen „rsasltpswd“ durch den Namen Ihres temporären Verzeichnisses.

 

 


9.1.1.2          Fehler bei Aktivierung von „saltedpassword“ kommt „SaltedPassword will not work until…“

 

 

Ursache:

Sie haben die Backend und die Frontend Authentifzierung für die Extension „rsaauth“ nicht auf „rsa“ umgestellt.

Für die Backend Authentifzierung und die Funktion von „rsaauth“ ist es zwingend notwendig im Backend auf die “rsa“ Authentifzierung umzustellen.

 

Abhilfe:

Gehen Sie in das TYPO3 Install Tool unter „All Configuration“ und geben Sie bei „[BE][login SecurityLevel]“ den Wert „rsa“ ein. Wenn Sie dies auch für das Frontend einstellen wollen (empfohlen), so geben Sie bei „[FE][login SecurityLevel]“ auch „rsa“ ein.

 

9.2        Ein „favicon.ico“ für die Website festlegen

In den meisten Browser (z.B. IE, Firefox) kann links vor dem Webseitennamen ein kleines Icon (16 x 16 Pixel) angezeigt werden. Dazu ist eine Datei mit Name „favicon.ico“ welche mit 16x16 Pixel angelegt wurde (es gibt dazu eigene Programme).

Die Datei muss dann in den Ordner „fileadmin/“ kopiert werden (fileadmin/favicon.ico)

Das wird in TYPO3 wie folgt eingebunden:

 

Im Root Template Setup eintragen:

page = PAGE

...

  page.shortcutIcon = fileadmin/favicon.ico

 

Danach noch den TYPO3 Cache löschen, und im Web Browser muss man die Seite neu laden.

 

9.3        Überprüfung Indexe nach Update

Dies können Sie im Backend von TYPO3 durch folgenden Aufruf durchführen.

Führen Sie unter „Admin Tools“ – „DB Überprüfung“ – „Update now“ eine Index Überprüfung der Datenbank durch. Danach wählen Sie „Check now“

 

9.3.1.1          Fehler bei  „Admin Tools“ – „DB Überprüfung“ – „Update now“

 

Warning: Invalid argument supplied for foreach() in /srv/www/htdocs/typo3_src-4.5.0/t3lib/class.t3lib_refindex.php on line 1020

 

Ursache:

Noch nicht ermittelt.

 

Abhilfe:

Löschen Sie Dateien welche mit „temp_“ beginnen aus dem Verzeichnis „typo3conf“.

 

9.4        Testen von Sendmail

Im TYPO3 „Install Tool“ können Sie unter „Basic Configuration“ die Funktion vom „Sendmail“ Programm testen. Geben Sie die gewünschte Email-Adresse in das Feld ein und klicken Sie auf die Schaltfläche „Send“.

 

 

9.4.1.1          Fehler bei „sendmail“ mit PHP „SafeMode = on“

 

Ab TYPO3 Version 4.4.0 können nur noch Emails versendet werden wenn der SafeMode ausgeschaltet ist. Die PHP_MAIL-Funktion wird mit allen 5 Parametern genutzt und der 5. Parameter funktioniert nur bei „SafeMode = off“.

 

Lösung, wenn „SafeMode=on“ ist:

Über einen Hook in der Datei "localconf.php"

 

Anleitung:

Inhalt in des unten angeführten Scripts VOR der Zeile "?>" (am Ende) in die Datei "localconf.php" einfügen. Die Datei ist im Ordner "typo3conf" zu finden.

 

// Email mit SafeMode = ON versenden

// Userfunktion geschrieben am 04.07.2010 von J.Grewe

if (!function_exists('user_fcmail')) {

 

  $TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/utility/class.t3lib_utility_mail.php']['substituteMailDelivery'][] = 'user_fcmail';

 

  function user_fcmail($parameters) {

 

    $to                   = $parameters['to'];

    $subject              = $parameters['subject'];

    $messageBody          = $parameters['messageBody'];

    $additionalHeaders    = $parameters['additionalHeaders'];

    $additionalParameters = $parameters['additionalParameters'];

 

    $success = mail($to, $subject, $messageBody, $additionalHeaders);

 

    return $success;

 

  }

}

 

Danach sollte das „sendmail“ auch mit dem „SafeMode=on“ funktionieren.

 

 

9.4.1.2          Fehler bei „sendmail“ auf einem lokalen Linux Server

 

Folgende Meldung wird angezeigt nach dem Versuch an eine Adresse zu senden, aber es kommt kein Email an.

 

0 MAIL WAS SENT TO: office@mustername.at

 

Ursache:

Die Antwortadresse des Emails wird auf null@www.realpowerwork.com gesetzt. Manche Email Server versenden keine Emails wenn der Domänenname in der Antwortadresse nicht aufgelöst werden kann. Kontrollieren Sie dazu die Logdatei „/var/log/mail“.

 

Der Fehler unten wurde ausgeben von Hotmail diese Empfangen keine Emails von dynamischen IP-Adressen.

 

Oct  9 20:52:44 SLES11 postfix/smtp[14917]: 77C9E1152FE: to=<myoffice@hotmail.com>, relay=mx2.hotmail.com[65.54.188.72]:25, delay=1.1, delays=0.13/0.01/0.8/0.18, dsn=5.0.0, status=bounced (host mx2.hotmail.com[65.54.188.72] said: 550 DY-001 (BAY0-MC1-F29) Unfortunately, messages from 188.23.21.214 weren't sent. Please contact your Internet service provider. You can tell them that Hotmail does not relay dynamically-assigned IP ranges. You can also refer your provider to http://mail.live.com/mail/troubleshooting.aspx#errors. (in reply to MAIL FROM command))

 

Der Fehler sagt aus, das es nicht erlaubt ist Emails von einem Server mit einer dynamischen IP-Adresse zu versenden. Diese Mledung können Sie immer dann erhalten wenn Sie versuchen von einem Server wecher hinter einem privaten ADSL Anschluß eines Internet Providers befindet, da diese fast immer die IP-Adressen dynamisch vergeben.

 

Abhilfe:

Entweder Sie haben die Mlglichkeit beim Internet Provider durch Umstellung ihres Anschlusses (meist auf „Business Account“) eine fixe IP-Adresse zu beantragen oder Sie setzen „DynDNS“ ein (suche Sie im Internet).

 

9.5        PHP Einstellungen

9.5.1           PHP SafeMode Aktivieren

Bei vielen neuen Installationen wird aus Sicherheitsgründen empfohlen den sogenannten „SafeMode“ von PHP einzuschalten. Damit kann verhindert werden, dass über PHP nicht erlaubte Befehle ausgeführt werden. Ist der „SafeMode“ eingeschaltet werden nur Programme ausgeführt, welche sich in einen angegebenen Verzeichnis z.B. in „/usr/local/bin“ befinden.

 

Beispiel der Aktivierung in der „php.ini“

SafeMode = On

safe_mode_exec_dir = /usr/local/bin

 

Danach den Apache Server neu starten.

 

Hinweis  Der aktivierte „SafeMode“ ist aber auch oft die Ursache für Probleme unter TYPO3. Bei neueren Verisonen von TYPO3 wird empfohlen den „SafeMode“ nicht mehr zu verwenden. Sollten bei Ihnen unerklärliche Probleme auftreten, testen Sie mal den „SafeMode“ zu deaktivieren.

 

9.5.2           PHP-Speicherlimit erweitern

1.   Öffnen Sie die Datei „php.ini“ die sich bei den meisten Linux Distributionen im Verzeichnis „/etc/“ oder bei SLES 11 befindet sich diese im Verzeichnis „/etc/php5/apache2/“. Bei einer XAMPP Installation ist diese Datei im Verzeichnis „/opt/lampp/etc/“.

2.   Suchen Sie nach der Variablen „memory_limit“. Den Wert auf mindestens „64M“ Einstellen. Speichern Sie die Änderung in der Datei ab.

 

9.5.3           PHP Upload Limit erweitern

1.   Öffnen Sie die Datei „php.ini“ die sich bei den meisten Linux Distributionen im Verzeichnis „/etc/“ oder bei SLES 11  in „/etc/php5/apache2/“ befindet. Bei einer XAMPP Installation ist diese Datei im Verzeichnis „/opt/lampp/etc/“.

2.   Suchen Sie nach der Variablen „file_uploads“. Dieser Wert muss damit Upload überhaupt erlaubt sind auf „file_upload = on“ stehen.

3.   Suchen Sie die Variable „upload_max_filesize“. Geben Sie die maximale Dateigröße an die als Upload erlaubt werden soll z.B. „20M“ für 20 Megabyte.

4.   Suchen Sie jetzt die Variable „post_max_size“. Geben Sie die gleiche Dateigröße an die Sie vorher bei Punkt 3. Eintragen haben z.B. „20M“ für 20 Megabyte.

5.   Speichern Sie die Änderung in der Datei ab.

6.   Wechsel Sie jetzt in das TYPO3 „Install Tool“ (zur Aktivierung kopieren Sie eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „Typo3conf“).

7.   Wählen Sie aus dem Menü „4: ALL CONFIGURATION“ aus.

8.   Suchen Sie den Eintrag „[maxFileSize]“. Geben Sie für die maximale Dateigröße von 20MB den Wert „20000“ ein. Der Wert sollte mit dem Wert in der „php.ini“ Übereinstimmen.

 

Hinweis  Damit diese Änderungen übernommen werden müssen Sie den Apache Server neu starten mit „rcapache2 restart“.

 

9.5.3.1          Fehler „No file upload! Probaly the file was to large for PHP#s internal limit…“

 

Beim Versuch eine Extension Datei zu laden erscheint folgende Fehlermeldung.

 

 

Abhilfe:

Erweitern Sie die „upload_max_filesize“ von PHP auf mind. 20MB.

 


9.6        FTP Zugang für TYPO3 und vsFTP einrichten

 

9.6.1           vsFTP Server unter SLES 11  Installieren

Der vsFTP Server wird in die Netzwerkdienste von „xinetd“ integriert. Damit läuft der vsFTP Server nur wenn ein Zugriff über FTP auf den Server erfolgt.

Die Konfiguration des FTP Server erfolgt in diesem Beispiel für das ganze „/srv/www/htdocs/“ Verzeichnis, d.h. das der Zugriff auf alle Unterverzeichnisse erfolgen kann.

 

1.    Bearbeiten Sie die vsFTP Konfigurationsdatei wie folgt:

# Example config file /etc/vsftpd.conf for TYPO3

write_enable=YES

ftpd_banner="Welcome to SLES 11 FTP service."

hide_ids=YES

local_enable=YES

local_umask=002

log_ftp_protocol=YES

xferlog_enable=YES

vsftpd_log_file=/var/log/vsftpd.log

connect_from_port_20=YES

pam_service_name=vsftpd

#listen=YES

ssl_enable=NO

local_root=/srv/www/htdocs/

 

2.    Ändern Sie in der Datei „/etc/xinetd.d/vsftpd“ die Zeile mit den Eintrag auf:

disable = no

 

3.    Starten Sie jetzt den vsFTP Server durch einen Neustart der „xinetd“ Dienste:

SLES 11:~ # rcxinetd restart

4.    Der vsFTP Server sollte damit laufen.

5.    Für den Zugriff von einen FTP Client sollten Sie für die TYPO3 Verzeichnisse folgend Berechtigungen vergeben:

SLES11:~ # chown –R wwwrun:ftp  /srv/www/htdocs/<typo3 verzeichnis>
SLES11:~ # chmod –R 770 /srv/www/htdocs/<typo3 verzeichnis>


oder

SLES11:~ # chown –R <ftp benutzer>:www /srv/www/htdocs/<typo3 verzeichnis>
SLES11:~ # chmod –R 770 /srv/www/htdocs/<typo3 verzeichnis>


 

9.6.2           FTP Zugang für TYPO3 mit vsFTP einrichten

Beim Upload von Dateien über den vsFTP Server, kann es danach ein Problem mit dem Zugriff von TYPO3 auf diese Dateien geben. Dies kann durch folgende Vorgehensweise verhindert werden.

 

1.    Erstellen Sie einen eigenen Benutzer für den FTP Zugriff z.B. „ftpuser“

2.    Dieser Benutzer bekommt als Standardgruppe „www“ zugeteilt.

3.    Zusätzlich wird dieser Benutzer der „ftp“ Gruppe zugeteilt.

4.    In der vsFTP Konfigurationsdatei „/etc/vsftd.conf“ wird folgende Option eingestellt
„local_umask=002“

5.    Den vsFTP Server neustarten mit „rcxinetd restart“

 

Wenn Sie jetzt Dateien hochladen, bekommen diese als Benutzer den FTP Benutzer zugeteilt und als Gruppe die „www“. Über die Gruppe müsste jetzt auch TYPO3 darauf zugreifen können, vorausgesetzt auch die Gruppe besitzt die Berechtigung „rwx“.

 

WICHTIG Um Probleme beim Zugriff zwischen den FTP hochgeladenen Dateien und dem TYPO3 Webbenutzer zu verhindern, sollten Sie den FTP Benutzer der Gruppe „www“ und der Gruppe „ftp“ zuteilen. Beiden Gruppen geben Sie dann Schreibrechte auf die Verzeichnisse und Dateien in welche Ihre TYPO3 Dateien abgelegt werden.

 


10    Erstellung der Website in TYPO3

10.1    Einloggen in das TYPO3 Backend (BE)

Um TYPO3 Konfigurationen oder auch Inhalte zu verwalten, müssen Sie sich in das sogenannte TYPO3 Backend einloggen.

 

Sie können das Backend ganz einfach aufrufen indem Sie an den URL der Website den Text „typo3“ anhängen. Für unsere Website wäre das „http://www.cms.com/typo3

 

Es erscheint dann das Login Fenster von TYPO3:

 

Geben Sie als Benutzernamen „admin“ und als Passwort „password“ (wenn Sie es noch nicht geändert haben).

 

WICHTIG Wenn sich die TYPO3 Website auf einem Server eines Internet Providers befindet, sollten Sie den Login und das Passwort per Email nach der Einrichtung der Website erhalten haben.


10.2    TYPO3 Extension Manager

Der Extension Manager ist eine der Hauptkomponenten von TYPO3 mit welchen die Grundfunktionen von TYPO3 erweitert werden können. Erst durch den Extension Manger wird es möglich Erweiterungen (Extension) nach eine einheitlichen Schema anzulegen.

 

Damit der Extension Manager und auch TYPO3 richtig funktioniert sind noch Einstellungen notwendig:

 

10.2.1        Anpassungen wenn TYPO3 Install Tool verfügbar

 

1. Danach im „TYO3 Install Tool“ unter [SYS] folgende Optionen aktivieren.
[curlUse] = 1
[setMemoryLimit] = 64

 

2. Außerdem sollten in der „php.ini“ (/etc/php5/apache2/) die Parameter gesetzt sein:
allow_url_fpopen = on
max_execution_time = 60
memory_limit = 64M

 

3.    Installieren Sie das Extension Module “php5-curl” für PHP wenn nicht schon vorhanden.

 

10.2.2        Anpassungen direkt in der “localconf.php”

 

Wenn das TYPO3 Install Tool bei Ihrer TYPO3 Installation nicht verfügbar ist, so können Sie die Anpassungen auch direkt in der Datei “localconf.php” im Verzeichnis “typo3conf” vornehmen. Fügen Sie dazu folgende Zeilen ein, wenn diese nicht vorhanden sind:

 

$TYPO3_CONF_VARS['SYS']['curlUse'] = ' 1 ';

$TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = ' 64 ';

 

oder  wenn notwendig muss dies auch in der Datei “.htaccess” vorgenommen werden

 

php_value memory_limit 64M

 

 


10.2.3        Extension Manager Settings

Um die Performance des Online Extension-Servers zu verbessern (TER2), wurde die Suche im Repository umgestellt, man muss jetzt zuerst eine Liste mit den Extensions runterladen, damit die Suche lokal erfolgen kann.

 

1.    Einloggen im TYPO3 Backend (BE).

2.    Also unter Tools à „Ext Manager“, den Punkt "Settings" auswählen.

3.    Sie können hier "Enable unsupported extensions" anhaken, wenn Sie auch nicht „security reviewed“ Extension unterstützen möchten.

4.    Die Userangaben braucht man nur, wenn man einen Account bei typo3.org hat und z.B. an eigene nicht öffentliche Extensions ran will.

5.    Hiernach auf „Update“ klicken. Damit sollte die Mirror Liste geladen werden.



6.    Wenn die Mirror Liste nicht angezeigt wird, können Sie auch unauffälliger Link auf "Click here to reload the list." - klicken.

Hinweis Wenn Sie auch ungetestete Extensions installieren wollen, können Sie unter „Settings“ auch „Enable extensions without review (basic security check):“ (oder „Erweiterungen ohne Prüfung zulassen (grundlegender Sicherheitstest):“) anwählen.

 

WICHTIG  Beachten Sie aber, dass ungetestete Extensions zu einem unstabilen oder unsicheren System führen können.

 

10.2.4        Extension Manager Liste (Repository) laden

1.    Also unter Tools à Ext Manager, den Punkt "Import extensions" auswählen.

2.    Klicken Sie jetzt auf die Schaltfläche „Retrieve/Update“.

 

3.    Klicken Sie jetzt auf die Schaltfläche „Retrieve/Update“.

 

4.    Danach wird das Datum des letzten Updates angezeigt.



 

10.2.4.1       Fehler „Retrieve/Update“ kommt „Maximum execution time 15 exceded in…“

 

Fatal error: Maximum execution time of 15 seconds exceeded in /home/.sites/112/site415/web/t3lib/class.t3lib_db.php on line 567

 

Ursache:

In der “php.ini” ist die Zeit für “max_execution_time” auf “15” eingestellt.

 

Abhilfe:

Erhöhen Sie den Wert für “max_execution_time” auf mindesten “60” Sekunden

 

10.3    Installieren des deutschen Sprachpaketes

Die Extensions wie z.B. „csh_de“ werden jetzt nicht mehr unterstützt. Sollte nach einen Update auf Version 4.x noch eine vorhanden sein, kann diese deinstalliert werden. Die Sprachen werden nun in einen eigenen Ordner installiert (typo3conf/l10n), und diese werden für das Backend (BE) und das Frontend (FE) inklusive fast aller Extensions verwendet.

 

10.3.1        Installation von Sprachen für Backend (BE)

1.    Wählen Sie aus dem Menü „Ext Manager“ aus.

2.    In der Drop-Down Auswahl wird "Translation Handling" gewählt.



3.    Dort wählen wir aus der Liste "Deutsch - [German]"

Hinweis  Wenn Sie einen Mehrsprachige Website betreiben wollen können Sie, mit Halten der <Strg> Taste und klicken auf die jeweilige Sprache, noch alle zusätzliche Sprachen für Ihre Website auswählen.

4.    Dann "Save selection" kicken, damit diese Einstellung aktiv bleibt.

5.    Klicken Sie jetzt auf "Check status against repository".




6.    Wenn die Module den Status „??“ oder „UPD“ (mit gelben Hintergrund) besitzen, sollten Sie ein Update von Online-Repository durchführen.

7.    Klicken Sie dazu auf „Update from repository“.

8.    Danach sollte der Status der Module wie folgt angezeigt werden.



Das heißt dass die Module Down geladen wurden.

9.    Wenn Sie „Update from repository“ danach nochmals durchführen ändert sich er Status auf „OK“.




10.  Um die Sprache des angemeldeten Benutzers zu ändern, wählen Sie jetzt aus dem „Setup“ (in Deutsch „Einstellungen“).



11. Wählen Sie jetzt bei Backend-Sprache „Deutsch – [German]“.



12. Nach einem neuerlichen Login, sollten die Anzeige im Backend auf Deutsch erfolgen.

 

Diesen Vorgang sollte man nach Installation von Extensions oder nach bestimmten Zeitabständen wegen möglicher Updates wiederholen.

 

10.3.2        Fehlerliste Backend (BE) und Extension Manager

 

10.3.2.1       Fehler im Backend erscheint immer die Meldung „Invalid Security Token!“

 

Während des Arbeitens im Backend erscheint immer wieder ein Fenster mit der Meldung „router ExtDirect: Ivalid Security Token!“

 

 

Ursache:

 

Abhilfe:

 

 

10.3.2.2       Fehler Mirror Liste oder Repository wird nicht angezeigt.

 

Wir die Mirror Liste nicht angezeigt, oder der Error unter Punkt 3.2.1.3  angezeigt wird, könnte das an falschen Firewall Einstellungen liegen.

 

Abhilfe:

Deaktivieren Sie kurzzeitig die Firewall und testen Sie das laden der Mirror Liste.

 

 

10.3.2.3       Fehler unter „Import Extension“ beim Klicken auf „Look up“ folgende Fehlermeldung erhalten:

 

Error: The extension MD5 sum could not be fetched from extensions.md5. Possible reasons: network problems, allow_url_fopen is off, curl is not enabled in Install tool.

 

Ursache:

PHP „allow_url_fopen“ nicht aktiviert oder „curlUse“ im Install Tool von TYPO3.

 

Abhilfe:

In der Datei „php.ini“ im Verzeichnis „/etc/php5/apache2“ die Option „allow_url_fopen = ON“ einstellen.

 

10.3.2.4       Fehler im Firefox leere Seite oder im IE "Seite kann nicht angezeigt werden"

 

Habe das  Problem seit 4.x.x auf dem Server ist, bei den Extension Manager Auswahlpunkten „Settings“, „Translation handling“ und „Import Extensions“.

 

Abhilfe:

Auf dem Server muss das Paket „php5-curl“ installiert sein und aktiviert sein.

 

Kontrolle der Installation:

Im TYPO3 Install Tool unter  „8: phpinfo()“ Suchen Sie den Eintrag:

curl

CURL support

enabled

CURL Information

libcurl/7.15.1 OpenSSL/0.9.8a zlib/1.2.3 libidn/0.6.0

 

 

10.3.2.5       Fehler „Call to undefined function: curl_init()“

 

Es wird nach der Installation von diesem Paket keine leere Seite mehr angezeigt, aber die Fehlermeldung von Punkt 10.3.2.4 kommt immer noch.

 

Im Apache Error log „www.domain.com-error.log“ (/var/apache2/):

Fatal error: Call to undefined function: curl_init() in .../t3lib/class.t3lib_div.php on line 2348

 

Abhilfe:

Entweder Sie haben „curl“ oder „php5-curl“ nicht installiert. Wenn doch siehe Punkt 10.3.2.6

 

10.3.2.6       Fehler „ allow_url_fopen is off, cURL is not enabled in the Install Tool “

 

Error: The extension MD5 sum could not be fetched from http://ter.rz.tu-clausthal.de/ter/extensions.md5.Possible reasons: Network problems, allow_url_fopen is off, cURL is not enabled in the Install Tool

 

Abhilfe:

Öfnen Sie das TYPO3 Install Tool und setzen Sie die folgenden Optionen:

 


10.3.2.7       Fehler „Update from repository“ bringt immer „Could not fetch translation status“

 

 

Wenn dieselbe Funktion auf einem Browser direkt am TYPO3 Server ausgeführt wird funktioniert der Check (wenn es ein lokaler Server ist).

 

Ursache:

Bei dieser Funktion verbindet sich nicht der Client mit dem Repository, sondern der TYPO3 Server. Daher muss der TYPO3 Server eine Internetverbindung aufbauen können.

Als weitere Voraussetzung muss „allow_url_open“ aktiviert sein, dies ist auf machen Servern aus Sicherheitsgründen deaktiviert.

 

Abhilfe:

Wenn die Internetverbindung am Server nicht automatisch hergestellt wird, müssen Sie diese, vor Aufruf dieser Funktion, manuell herstellen.

Wenn Sie auf einen SLES11 Server arbeiten tragen Sie die Option „allow_url_open = on“ direkt in die „php.ini“ ein und starten Sie den Apache Server neu.

 

Alternativ kann TYPO3 so konfiguriert werden, dass der Extension Manager die Zugriffe auf das Repository über die CURL Bibliothek abwickelt. Wechseln dazu in das TYPO3 Install Tool und gehen Sie dort „All Configuration“. Hier aktivieren Sie die Option [curlUse] mit:

 


Fehler nach „Update from repository“ wird “UPD” oder “ERR” angezeigt.

 

 

Ursache:

Konnte nicht ermittelt werden.

 

Abhilfe:

Nach nochmaligen klicken auf „Update from Repository“ waren alle Zeilen welche auf „UPD oder „ERR“ standen auf „OK“.

 


10.4    Sprache des Backend (BE) auf Deutsch einstellen

 

Wählen Sie dazu zuerst aus der Navigation „ADMIN TOOLS“ - “Extension Manager“ aus der Drop-Down Liste wählen Sie „Translation Handling“ aus.

 

 

Im Auswahlfenster scrollen Sie nach unten und klicken Sie „German – [German]“ an. Danach klicken Sie auf die Schaltfläche „Save selection“. Dann „Check status against repository“ und danach auf „Update from repository“ anklicken.

 

 

Jetzt können wir aus der Navigation „User tool“ - “User settings“ aufrufen. Dort gibt es ein Drop-Down Feld „Language“ in welchen wir „German – [German]“ auswählen. Nur noch speichern durch klicken auf „Save configuration“ und die gewählte Sprache sollte im Backend angezeigt werden.

 

Eventuell den Browser nochmals aktualisieren damit alle Texte upgedatet werden.


10.5    Einrichtung der Root Website und des Templates

10.5.1        Änderung bei den inkludierten statischen Templates

 

Ab TYPO3 4.4.x werden keine inkludierten statischen Templates (Include Static) mehr eingespielt oder angezeigt. Diese sind nicht zu verwechseln mit den „Statischen Templates (aus Erweiterungen)“ oder „Include static (from extensions)“, diese ändern sich nicht.



Es gibt jetzt eine eigene System Extension „Static Templates“, welche die Unterstützung für statische Templates zur Verfügung stellt. Die statischen Templates werden jetzt in der Tabelle „static_template“ gespeichert.

 

 

Wenn Sie statische Templates benötigen,  müssen Sie diese manuell im TYPO3 Install Tool unter Datenbankanalyse mit „IMPORT“ wieder einspielen.

 

 

10.5.2        Erstellung des Root-Template in TYPO3

 

Damit auf einer TYPO3 Website etwas angezeigt wird muss ein sogenanntes Template erstellt werden. Das erste und oberste Template auf einer Website ist das „Root-Template“.

 

Wenn Sie versuchen die Webseite vor dem Erstellen eines Templates aufrufen wird folgendes angezeigt werden:

 

Das Bedeutet, dass es für die TYPO3 Installation noch Template erstellt wurde und es daher keine Seiten im Seitenbaum (Baumstruktur) gibt um diese anzuzeigen.

 

Hinweis Wenn Sie die Extension Template Voila (templvoila) verwenden wollen, so können Sie diese Kapitel auslassen und gleich zum Kapitel „Root Website mit der Extension „Template Voila“ gehen.

 

Bevor Sie dynamische Inhalte auf der TYPO3 Webseite anzeigen können, müssen Sie zuerst einen Seite (Rootseite) und ein Template (Root-Template) erstellen.

 

1.    Einloggen in das TYPO3 Backend.

2.    Klicken Sie dazu in der mittleren Spalte (Seitenbaum) auf die Weltkugel es sollte ein kleine PopUp-Menü erscheinen. Aus diesen wählen Sie „Neu“ aus.



3.    Klicken Sie unter „Neue Seite erstellen“ den Text „Seite (in)“ an.



4.    Das Häkchen bei „Verbergen“ entfernen und bei „Seitentitel“ den Namen für die Hauptseite (Rootseite) eingeben.



5.    Abspeichern der Seite mit den Diskettensymbol  oder

6.    Klicken Sie danach auf den Text „HOME“ im Seitenbaum (nicht auf das Symbol).



7.    In der Navigation klicken Sie jetzt auf „Template“. Es sollte jetzt nachfolgendes angezeigt werden, in welchen Sie auf „Template für neue Seite erstellen“.



8.    Es kommt jetzt noch eine Sicherheitsabfrage die Sie mit „OK“ bestätigen.



9.    Mit nachfolgender Meldung ist Anlage des Root-Templates abgeschlossen.

 

 

10.5.2.1       Fehler beim Erstellen einer neuen Seite kommmt „Unknow column…“

 

 

Ursache:

Dieser Fehler kann auftreten wenn die Root Seite komplett aus dem TYPO3 Verzeichnisbaum gelöscht wurde. Es werden dann keine Datentype zur Neuanlage angezeigt.

 

Abhilfe:

Fehler in Datenbank. Wurde nicht verfiziert, sondern es wurde eine neue Datenbank angelegt.

 

10.5.3        Ausgabe auf Website von TYPO3 testen

1.   Wählen Sie aus der Navigation „Template“ aus.

2.   Im Seitenbaum klicken Sie auf Ihre Rootseite hier „HOME“.

3.   Klicken Sie in der rechten Spalte den Text „NEUE SEITE“ (ist das Root-Template).



4.   Klicken Sie dann auf den Bleistift vor dem Text „Konfiguration“.



Hinweis In den weiteren Kapitel wird anstatt vom „Konfiguration“ immer vom „Setup“ gesprochen, weil sich das durch die englische Version eingebürgert hat.
Es wird immer vom „Setup Bereich“ gesprochen, wo TypoScript eingefügt werden soll.

5.   Geben Sie folgenden TypoScript Code im Setup Bereich des Templates ein, wenn er nicht schon vorhanden ist. Damit kann die grundsätzliche Funktion von TYPO3 getestet werden.

 

page = PAGE

page.10 = TEXT

page.10.value = HELLO WORLD

 

6.    Es sollte der Text „HELLO WORLD“ im Browser angezeigt werden.

 

10.5.4        Sprache des Frontend (FE) Deutsch einstellen

 

Durch folgende Einstellung werden viele Ausgaben von Extension auf dem Frontend (FE)der Website auf die deutsche Sprache umgestellt.

Wenn Sie die deutsche Sprache für das Fronende als Standardsprache („Default Language“) für die Website festlegen wollen, können Sie folgendes im Setup Bereich des Root-Templates eintragen:

 

# Standardsprachen der Seite festlegen

config {

 sys_language_mode = strict; 0

 config.sys_language_overlay = hideNonTranslated

 sys_language_uid = 0

 language = de

 locale_all = de_DE

 htmlTag_langKey = de

}

[global]

# Default PAGE object:

page = PAGE

 

Die „sys_language_uid“ legt die ID der Sprache fest, wobei „0“ immer die Standardsprache vom „Frontend“ ist.

 

Da alle neuen Seiten von TYPO3 in der „localconf.php“ auf „utf8“ eingestellt sind können auch folgende Einstellungen richtig sein:

# Standardsprachen der Seite festlegen

page.config.linkVars = L

page.config.sys_language_uid = 0

page.config.metaCharset = utf8

page.config.locale_all = de_DE.utf8

page.config.language = de

# Default PAGE object:

page = PAGE



10.5.5        Website mit der Extension „Template Auto-parser“

 

Durch Aktivierung der Extension „TYPO3 skin“ können Sie (wenn Sie wollen) das Aussehen des Backends auf moderneres Design umstellen.

 

 

 

Wir installieren die für die Einrichtung des Root-Templates benötigte Extension.

Eine Anleitung zur Installation von Extension gibt es im Kapitel „9 Installation von TYPO3 Extensions.

 

 

Wir erstellen zuerst die Root-Template (wenn nicht schon geschehen) mit dem Namen „Home“. unter Web à Seite.

 

 

Wir erstellen das Root-Template für die Website unter Web à Template.

Die Extension „Automake Template“ für automatische Umsetzung der dynamischen Bereiche wurde schon installiert.

 

Es wurde ein Root-Template mit folgendem Inhalt erstellt:

 

# Konfiguration für den „Template Auto-parser“

plugin.tx_automaketemplate_pi1 {

  content = FILE

  # Dateiname der HTML Vorlagedatei für „Template Auto-parser“

  content.file = fileadmin/index.htm

  elements {

     # Erzeuge einen Subpart mit Namen ###BODY###

     BODY.all = 1

     BODY.all.subpartMarker = DOCUMENT_BODY

     # Erzeuge einen Subpart mit den Namen ###HEAD###

     HEAD.all = 1

     HEAD.all.subpartMarker = DOCUMENT_HEADER

     # Entfernen der Tags <titel> aus dem Dokument

     HEAD.rmTagSections = title

     # Alle gefundenen <div> Tags werden auf Subparts umgesetzt.

     DIV.all = 1

   }

 

  # Festlegung der relativen Pfade für den „Template Auto-parser“

  relPathPrefix = fileadmin/

  relPathPrefix.IMG = fileadmin/

  relPathPrefix.LINK = fileadmin/templates/css/

}

 

# Erzeugen eines „temp“ Objektes für den Header der HTML Dokumentes

temp.headTemplate = TEMPLATE

temp.headTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_HEADER

}

# Erzeugen eines “temp” Objektes für den BODY des HTML Dokumentes

# Übergabe der Inhaltselemente an die Subparts des Dokumentes

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

      # Ersetze den Subpart ###logo### durch das Logo

   subparts.logo = IMAGE

   subparts.logo.file = fileadmin/templates/images/rpwlogo.gif

       # Ersetze den Subpart ###banner### durch das Website Banner

   subparts.banner = IMAGE

   subparts.banner.file = fileadmin/templates/images/banner1.jpg

    # Ersetze den Subpart ###breadCrumb###  durch ein dynamisches Menü: „temp.breadcrumb“

   subparts.breadCrumb < temp.breadcrumb

    # Ersetze den Subpart ###searchs###  durch ein dynamisches Menü: „temp.macinasearch“

   subparts.search < temp.macinsearch

    # Ersetze den Subpart ###siteLinks###  durch ein dynamisches Menü: „temp.menu“

   subparts.siteLinks< temp.menu

     # Ersetze den Subpart ###content### den Inhaltsbereich “NORMAL”

   subparts.content < styles.content.get

     # Ersetze den Subpart ###headlines### durch ein dynamisches Menü: „temp.headlines“

   subparts.headlines < temp.headlines

     # Ersetze den Subpart ###siteInfo### durch das Objekt “temp.footermenu”

   subparts.siteInfo < temp.footermenu

}

 

# Erstellung des PAGE Objektes und Übergabe der voher erstellten „temp“ Objekte

# des Dokumentes „temp.mainTemplate“ und „temp.headTemplate“

page = PAGE

page.10 < temp.mainTemplate

page.headerData.10 < temp.headTemplate

 

 

 

Wenn Sie diese Website danach im Browser ansehen, werden die dynamischen Bereiche noch nicht durch dynamische Inhalte ersetzt da, diese noch nicht festgelegt wurden.

 

10.5.6        Root Website mit der Extension „Template Voila“

Mit der Extension „Template Voila“ wird ein neuer Weg beschritten, wie Inhalte den einzelnen Seitenelementen zugeteilt werden. Dabei erfolgt die Zuweisung (das Mapping) der Inhalte zu den Seitenelementen in einen grafischen Designer.

 

1.    Installieren Sie die Extension „templvoila“ vom Online Repository oder „templavoila_1.5.5.t3x“ aus einer Datei.

2.    Es wird das Ergebnis des Extension Imports angezeigt.



3.    Klicken Sie jetzt auf „Erweiterung installieren“.

4.    Es wird dann angezeigt welche Tabellen upgedatet werden.



Scrollen sie in der Seite nach unten und klicken Sie dazu auf „Aktualisierungen durchführen“.


5.    Danach kommt noch ein Konfigurationsfenster für Kompatibilitäten mit älteren Extension Modulen. Wählen Sie nichts und klicken Sie auf „Update“.



6.    Aktualisieren Sie jetzt den Browser, damit alle Module des Template korrekt geladen werden.

7.    Im Navigator wird danach ein neues Auswahlelement „TemplaVoilà“ angezeigt.


8.    Damit bei der Generierung der Website die Extension „TemplaVoilà“ verwendet wird muss noch folgendes im Setup Bereich vom Root-Template eingetragen werden.

page = PAGE

page.typeNum = 0

page.10 = USER

page.10.userFunc = tx_templavoila_pi1->main_page

 

 

 

10.5.6.1       Template Voila Wizard starten

1.    Klicken Sie in der Navigation auf „TemplaVoilà“

2.    Im rechten Fenster klicken Sie auf die Schaltfläche „Start wizard now!“



3.    Wählen Sie die HTML Template Datei aus die Sie verwenden möchten und klicken Sie in dieser Zeile auf „Choose as Template“.



4.    Es wird danach das HTML Template angezeigt und Sie müssen jetzt die Felder „Name of site“, „URL of the website“ und „Editor username“ ausfüllen. Klicken Sie danach auf „Create new site“.



5.    Nach einiger Zeit sollte dann das Mapping Startfenster von TemplaVoilà angezeigt werden. Klicken Sie in diesem Fenster auf „Start the mapping process“.



6.    Es erscheint jetzt das Auswahlmenü für das Mapping. Führen das Mapping der Inhaltselemente zu den entsprechenden HTML Bereichen in ihrem Template durch.

7.    Die vorgegebene Seitenstruktur können Sie je nach ihrer Anforderungen und Ihrem durchgeführten Mapping später verändern.

 

 

10.5.6.2       Fehler beim Anklicken von „Seite“ in der Navigation

 

 

Ursache:

Kommt meist nach der Installation der Extension. Es wurden noch nicht alle Module korrekt in den Browser geladen.

 

Abhilfe:

Aktualisieren Sie jetzt den Browser, damit alle Module des Template korrekt geladen werden. Danach wird der Text „Seite“ in der Navigation wieder auf „Page“ umgedreht.

 

 

10.5.6.3       Fehler TemplaVoilà beim Anklicken „Start wizard now!“

 

 

Ursache:

Template Voila geht davon aus, dass sich die HTML-Template Dateien, welchen die Inhaltselemente zugeordnet werden im Verzeichnis „fileadmin/templates“ befinden. Ist das Verzeichnis nicht vorhanden kommt diese Fehlermeldung.

 

Abhilfe:

Legen Sie unter dem Verzeichnis „fileadmin“ das Verzeichnis „templates“ an.

 

10.5.6.4       Fehler TemplaVoilà wird kein HTML Template angezeigt

 

 

Ursache:

Es gibt zwar das Verzeichnis „fileadmin/templates“ nur haben Sie in dieses Verzeichnis keine HTML Dateien (Endung „html“ oder „htm“) abgelegt, welche als Template verwendet werden können.

 

Abhilfe:

Kopieren Sie Ihre HTML Template Dateien für Ihre TYPO3 Seite in das Verzeichnis „fileadmin/templates“.

 

10.5.6.5       Fehler TemplaVoilà beim Anzeigen der Webseite

 

 

Ursache:

Es wurde in der Extension TemplaVoilà noch kein gültige Mapping festgelegt.

 

Abhilfe:

Nehmen Sie ein gültiges Mapping für Ihre Inhaltelemente vor.

 


10.5.7        Verwendung der YAML Extension für die Website

 

Sehen dazu näheres in der  YAML Dokumentation

http://www.yaml.de/de/dokumentation.html

 

Download für die  YAML Extension finden Sie unter

http://www.t3net.de/download.html

Je nachdem ob Sie die „template Auto-Parser“ oder das „Template Voila“ können Sie die entsprechende Extension downloaden.

 

Die Installation der YAML Extension () können Sie wie folgt vornehmen.

 

10.5.8        Zusätzliche Einstellungen des Root-Templates

 

Geben Sie im Feld „Setup:“ folgendes ein, um globale Einstellungen für die Website vorzunehmen:

 

# Umstellung auf XHTML und XHTML Cleaning

config.doctype =xhtml_trans

config.xhtml_cleaning = all

 

# Aktivierung des Admin-Panels im Frontend wenn „#“ entfernt wird

#config.admPanel = 1

 

# Festlegung des Ziels für Links, benötigt zusätzliche Angaben unter Constants

config.intTarget = {$PAGE_TARGET}

config.extTarget = _blank

 

10.5.9        Ausführen vom „Template Analysis“ für das Root Template

Wenn Sie unter Navigation „Template“ auf die Auswahl „Template Analysis“ wechseln, haben Sie die Möglichkeit das erstellte Template auf Fehler zu durchsuchen lassen.

 



 


10.5.9.1       Grüne Felder in Template Analysis werden angezeigt


 

Abhilfe:

Dies ist eigentlich kein Fehler, sondern es wird hiermit angezeigt, dass sich in dieser Zeile am Ende Leerzeichen befinden. Sie können diese beim Bearbeiten des Template entfernen.

10.5.9.2       Fehler bei Template Analysis kommt „Object copied in this line ‚SPC > .NO‘ would leave the…“

 

Beim Ausführen vom Template Analysis kommt bei einem Menüobjekt folgende Fehlermeldung:

 

 

Abhilfe:

Ändern Sie das TypoSkript folgendeweise um, damit die Werte für SPC fix vergeben werden.

 

… 

   CUR = 1

     CUR.linkWrap = <li>|</li>

     CUR.ATagParams = class="menu_active"

     SPC = 1

     SPC {

       linkWrap = <li>|</li>

       doNotLinkIt = 1

       doNotShowLink = 1

       allWrap = <br/>

     }

   }

 

   2 < .1

   2 {

      wrap = <ul class="menu_list2">|</ul>

      SPC = 1

      SPC {

        linkWrap = <li>|</li>

        doNotLinkIt = 1

        doNotShowLink = 1

        allWrap = <br/>

      }

 

10.6    Rich Text Editor (htmlArea)

Seit der Version 4.4 wurde der RTE (Rich Text Editor) von Grund auf neu geschrieben. Dieser wurde nun mit Ext JS realisiert. Dieser wird mit der TYPO3 Installation schon mitinstalliert.

 

10.6.1        Installation des Rich Text Editor

Als Standard Rich Text Editor unter TYPO3 4.5 wird die Extension „htmlArea RTE“ verwendet.  Für die Formatierung der Texte ist die Extension „CSS styled content“ zuständig.

 

Ansicht der System Extension „htmlArea“ als Rich Text Editor.

 

 

Ansicht der System Extension „CSS styled content“.

 

 

10.6.2        Einstellungen für die Rich Text Editor im Erweiterungs-Manager

 

Sie können viele Grundeinstellungen für den Rich Text Editor im Extension Manager vornehmen. Gehen Sie dazu in der Navigation auf „Erweiterungen“. Wählen Sie „Geladene Erweiterungen“ und suchen Sie die Zeile mit der Extension „htmlArea RTE“ und klicken Sie auf den Text.

 

 

Durch folgende Einträge im TSconfig der Root Seite „Homepage“ können Sie Grundeinstellungen für den Rich-Text-Editor vornehmen:

 

# Anlegen von Zauberbildern ausschalten

RTE.default.blindImageOptions = magic                                                                                                                      

 

# Ermöglicht die Eingabe von Tabellen im Rich Text Editor

RTE.default.proc {

   dontConvBRtoParagraph = 1

   preserveTable = 1

}

 

# Verhindert insbesondere beim Kopieren aus MS-Word die Eingabe bestimmter Elemente im Rich Text Editor

RTE.default {

  #showButtons=copy,paste,formatblock,class,bold,italic,left,center,right,orderedlist,unorderedlist,link

  hideButtons=cut,fontsize,fontstyle,underline,textcolor,emoticon,outdent,indent,bgcolor,user,image,line,table

}

 

10.6.3        Funktionen für die Bearbeitung von Texten im RTE ausblenden

Wenn Sie dem Benutzer vom RTE nicht alle Funktionen für die Bearbeitung von Texten zur Verfügung stellen wollen, können Sei einzelnen Funktionen ausblenden.

 

Sie können durch folgende Eintragung in das TSConfig Feld der Seite diese Funktionen im RTE ausblenden:

 

# Funktionen (Schaltflächen) im Rich Text Editor ausblenden

RTE.default {

    hideButtons=underline,right

}

# left = Text links ausrichten

# center = Text zentrieren

# right = Text rechts ausrichten

# indent = Text einrücken

# oudent = Text ausrücken

# image  = Bild einfügen

 

 

Es werden die Schaltflächen für „Unterstrichen“ und „Rechtsbündig“ ausgeblendet.

 

Die RTE Formatierungsleiste sieht danach wie folgt aus:

 

 

 

10.6.4        Überschriften (Absatzarten) aus dem RTE ausblenden

Wenn Sie im RTE nicht alle Überschriften in der Auswahl der „Absatzart“  anzeigen wollen können Sie das im TSConfig Feld wie folgt durchführen:

 

# Ein- und Ausblenden von Absatzarten im Rich Text Editor

RTE.default {

    hidePStyleItems= H1,H4,H5,H6,PRE

}

 

Damit werden die Überschriften 1, 4, 5 ,6 (Tag <h1>,<h4>,<h5>, <h6>) und für die „Vorformatierten-Texte“ (Tag <pre>) aus der Absatzart-Auswahl ausgeblendet.

 

WICHTIG Nach dem Update auf die Version 4.5 hatte einige Probleme mit Formatierungen wie z.B. „Zentrierung“, „Blocksatz“, etc., dann hab ich in den Einstellungen der Extension „rtehtmlarea“ den Haken bei "Enable compressed scripts [enableCompressedScripts]" rausgenommen.

Dann habe ich noch mein CSS Stylesheet um folgende Einträge ergänzt:

/* Eingebaut nach Update auf 4.5 */

.align-left { text-align: left }

.align-center { text-align: center }

.align-right { text-align: right }

 

 

10.6.5        Schriftarten im RTE für Standard-Formatierung einstellen

Damit die Schriftarten im RTE gleich wie die Schriften der Standard-Formatierung für die Homepage (in der CSS-Datei) aussehen könne Sie die folgendes durchführen.

Übernehmen Sie die Formatierung aus der CSS Datei für diese Standard-Formatierungen und definieren Sie diese in der TSConfig der Homepage Rootseite für die komplette Homepage.

 

Geben Sie dazu folgende Einträge in das TSConfig Feld der Seite ein:

 

# Festlegung der Darstellung für Standard-Schriften im Rich Text Editor

RTE.default {

    mainStyleOverride_add.P = font-size:11px;line-height:11px;margin-bottom:0px;

    mainStyleOverride_add.H1 = font-size:16px;margin-top:15px;margin-bottom:10px;color:#606060;

    mainStyleOverride_add.H2 = font-size:14px;margin-top:10px;margin-bottom:6px;color:#606060;

    mainStyleOverride_add.H3 = font-size:12px;margin-top:5px;margin-bottom:0px;color:#606060;

    mainStyleOverride_add.UL = font-size:11px;line-height:11px;margin:0px 10px 0px;

    mainStyleOverride_add.OL = font-size:11px;

}

 

 

10.6.6        Eigene Überschriften für den RTE definieren

Sie können die Standardüberschriften <h1> bis <h6> deaktivieren und eigene Überschriften für den RTE definieren. Durch die gleiche Definition einer Schrift, im TSconfig sowie in der CSS Datei, kann die Schrift für den RTE und auch für den Frontend gleich aussehend gestaltet werden.

 

Durch folgenden Eintrag in das TSConfig Feld der Seite können Sie dies festlegen:

 

# Ein- und Ausblenden von Absatzarten im Rich Text Editor

RTE.default {

   classesParagraph = ueberschrift,ueberschrift2

}

 

# Konfiguration zusätzlicher Absatzarten im Rich Text Editor. Die Formatierung muss in der CSS-Datei hinterlegt werden!

RTE.classes {

   ueberschrift {

       name = Überschrift

       value = font-size:15px;color:#666666;font-weight:900;letter-spacing:0.03em;

    }

   ueberschrift2 {

       name = Überschrift2

       value = font-size:13px;color:#666666;font-weight:700;letter-spacing:0.03em;

    }

}



10.6.7        Erweiterte Konfiguration vom „htmlArea RTE“

 

Hier wird eine umfassende Konfiguration des Rich Text Editor durchgeführt.

 

Die Konfiguration im TSConfig Feld der Rootseite (oder beim Benutzer-/Benutzergruppe) die z.B. so aussehen könnte:

 

#*** RTE Classe des Interface (Ausrichtung)

RTE.classes {

  align-left {

        name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyleft

        value = text-align: left;

   }

   align-center {

        name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifycenter

        value = text-align: center;

   }

   align-right {

         name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyright

        value = text-align: right;

   }

}

 

#

# *** Entfernt das Bild vor den Links

RTE.classesAnchor {

   internalLink {

           class = internal-link

           type = page

           image >

    }

    externalLink {

           class = external-link

           type = url

           image >

    }

    externalLinkInNewWindow {

           class = external-link-new-window

           type = url

           image >

    }

    internalLinkInNewWindow {

           class = internal-link-new-window

           type = page

           image >

        }

   download {

           class = download

           type = file

           image >

   }

   mail {

           class = mail

           type = mail

           image >

   }

}

 

 

## RTE Konfiguration

RTE.default {

 

   # Zuweisung der CSS-Datei

   #contentCSS = rte_formate.css

   contentCSS = fileadmin/templates/css/rte_format.css

 

       

   ## Markup options

   enableWordClean = 1

   removeTrailingBR = 1

   removeComments = 1

   removeTags = center, sdfield

   removeTagsAndContents = style,script

 

   # Buttons die gezeigt/versteckt werden

   showButtons =  textstyle, textstylelabel, blockstyle, blockstylelabel, bold, italic, underline, left, center, right, orderedlist, unorderedlist, insertcharacter, line, link, image, removeformat, toggleborders, tableproperties, rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit, columninsertbefore, columninsertafter, columndelete, columnsplit, cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge, findreplace, insertcharacter, undo, redo, showhelp, about, chMode, inserttag

   hideButtons = fontstyle, formatblock, fontsize, strikethrough,lefttoright, righttoleft, textcolor, bgcolor, textindicator, emoticon, user, spellcheck, outdent, indent, justifyfull, subscript, superscript, table, acronym, copy, cut, paste

 

   # Hält die RTE Icons gegroupt zusammen

   keepButtonGroupTogether = 1

 

   # blendet Statusbar in htmlarea aus

   showStatusBar =  0

 

   ## Add styles Left, center and right alignment of text in paragraphs and cells.

   inlineStyle.text-alignment (

          p.align-left, h1.align-left, h2.align-left, h3.align-left, h4.align-left, h5.align-left, h6.align-left, td.align-left { text-align: left; }

          p.align-center, h1.align-center, h2.align-center, h3.align-center, h4.align-center, h5.align-center, h6.align-center, td.align-center { text-align: center; }

          p.align-right, h1.align-right, h2.align-right, h3.align-right, h4.align-right, h5.align-right, h6.align-right, td.align-right { text-align: right; }

    )

 

   ## Use stylesheet file rather than the above mainStyleOverride and inlineStyle properties to style the contents (htmlArea RTE only)

   ignoreMainStyleOverride = 1

       

   proc {

           # tags die erlaubt / verboten sind

           allowTags = table, tbody, tr, th, td, h1, h2, h3, h4, h5, h6, div, p, br, span, ul, ol, li, re, blockquote, strong, em, b, i, u, sub, sup, strike, a, img, nobr, hr, tt, q, cite, abbr, acronym, center

           denyTags = font

 

           # br wird nicht zu p konvertiert

           dontConvBRtoParagraph = 1

 

           # tags sind erlaubt außerhalt von p, div

           allowTagsOutside = img,hr

 

           # erlaubte attribute in p, div tags

           keepPDIVattribs = align,class,style,id

 

           # List all class selectors that are allowed on the way to the database

           allowedClasses (

                   external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail,

                   align-left, align-center, align-right, author

            )      

 

           # html parser einstellungen

           HTMLparser_rte {

 

                   # tags die erlaubt/verboten sind

                   allowTags < RTE.default.proc.allowTags

                   denyTags < RTE.default.proc.denyTags

 

                   # tags die untersagt sind

                   removeTags = font

 

                   # entfernt html-kommentare

                   removeComments = 1

 

                   # tags die nicht übereinstimmen werden nicht entfernt (protect / 1 / 0)

                   keepNonMatchedTags = 0

             }

 

 

           # Content to database

           entryHTMLparser_db = 1

           entryHTMLparser_db {

 

                   # tags die erlaubt/verboten sind

                   allowTags < RTE.default.proc.allowTags

                   denyTags < RTE.default.proc.denyTags

 

                   # CLEAN TAGS

                   noAttrib = b, i, u, strike, sub, sup, strong, em, quote, blockquote, cite, tt, br, center

 

                   rmTagIfNoAttrib = span,div,font

 

                   # htmlSpecialChars = 1

       

                   ## align attribute werden erlaubt

                   .tags {

                           p.fixAttrib.align.unset >

                           p.allowedAttribs = class,style,align

 

                           div.fixAttrib.align.unset >

 

                           hr.allowedAttribs = class

 

                           # b und i tags werden ersetzt (em / strong)

                           b.remap = strong

                           i.remap = em

 

                           ## img tags werden erlaubt

                           img >

                    }

             }

 

   }

 

   # Classes: Ausrichtung

    classesParagraph (

           align-left, align-center, align-right

     )

 

   # Classes: Eigene Stile

   classesCharacter = author

   classesImage= rte_image

 

 

   # Classes für Links (These classes should also be in the list of allowedClasses)

   classesAnchor = external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail

   classesAnchor.default {

           page = internal-link

           url = external-link-new-window

           file = download

           mail = mail

    }

 

   # zeigt alle CSS-Klassen die in formate.css vorhanden sind

   showTagFreeClasses = 1

 

   # Do not allow insertion of the following tags

   hideTags = font

 

   # Tabellen Optionen in der RTE Toolbar

   hideTableOperationsInToolbar = 0

   keepToggleBordersInToolbar = 1

 

   # Tabellen Editierungs-Optionen (cellspacing/ cellpadding / border)

   disableSpacingFieldsetInTableOperations = 1

   disableAlignmentFieldsetInTableOperations=1

   disableColorFieldsetInTableOperations=1

   disableLayoutFieldsetInTableOperations=1

   disableBordersFieldsetInTableOperations=0

}

 

# Use same processing as on entry to database to clean content pasted into the editor

RTE.default.enableWordClean.HTMLparser < RTE.default.proc.entryHTMLparser_db

 

# FE RTE configuration (htmlArea RTE only)

RTE.default.FE < RTE.default

RTE.default.FE.userElements >

RTE.default.FE.userLinks >

 

# Breite des RTE in Fullscreen-Ansicht

TCEFORM.tt_content.bodytext.RTEfullScreenWidth= 80%

 

 

10.6.8        Fehler in RTE Extension

 

10.6.8.1       Fehler Auswahl von Text Stil und Link anlegen nicht möglich

 

 

Ursache:

 

Abhilfe:

 

10.7    Erweiterung für Mehrsprachigkeit (Multilanguage)

Als Konzept für die Mehrsprachigkeit wird hier das sogenannte “Ein Baum für alle Sprachen” (oder “One-Page-Tree”) verwendet im Gegensatz zum „Two-Tree“ Konzept das hier nicht weiter behandelt wird. Dies bedeutet es gibt nur einen Seitenbaum in welchen alle Sprachen hinterlegt werden. Der Zugriff auf eine Seite in einer anderen Sprache erfolgt mit der gleichen Seiten-ID aber mit einem zusätzlichen Parameter im Aufruf-URL (z.B. „L=1“). Bei RealURL wird der URL um den Ländercode ergänzt z.B. „http://www.company.com/en/...“ Wird der zusätzliche Parameter nicht angegeben erfolgt die Anzeige in der Standardsprache.

 

Zusammenfassung:

·         Es gibt nur einen Seitenbaum

·         Es gibt eine primäre Sprache (ID 0) in der alle Seiten zuerst erstellt werden müssen

·         Danach kann jede Seite im Seitenbaum in eine andere vordefinierte Sprache (ID 1,2 etc.) übersetzt werden.

·         Wird keine eigene Seite in der benötigten Sprache gefunden, so wird die Seite in der Standardsprache angezeigt.

 

Die Sprache mit der sie die ersten Seiten primär Anlegen ist die Standardsprache mit der ID „0“.

 

10.7.1        Vorbereitung der TYPO3 Konfiguration auf Mehrsprachigkeit

 

1.    Damit die Mehrsprachigkeit unter TYPO3 ohne Probleme unterstütz wir müssen Sie zuerst sicherstellen das die MySQL Datenbank den Characterset „utf8“ verwendet.

 

2.    Bearbeiten Sie dann die Datei „localconf.php“ aus dem Verzeichnis „typo3conf“ und fügen Sie folgende Zeile ein:

 

$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8'; 

 

3.    Im Setup Bereich des TYPO3 Root Template wird folgendes eingefügt:

 

# Umstellung vom Character Set auf UTF8

config.metaCharset = utf-8

config.additionalHeaders = Content-Type:text/html;charset=utf-8

 

10.7.2        Sprachdateien für TYPO3 Downloaden

 

1.    Wählen Sie aus dem Menü „Ext Manager“ aus.

2.    In der Drop-Down Auswahl wird "Translation Handling" gewählt.



3.    Dort Sie zuerst auf die Sprache aus der Liste "Deutsch - [German]" und danach, mit Halten der <Strg> Taste noch „Spanisch – [Spanish]“. Damit haben Sie zwei Sprachen ausgewählt.

4.    Dann "Save selection" kicken, damit diese Einstellung aktiv bleibt.

5.    Klicken Sie jetzt auf "Check status against repository".

6.    Jetzt klicken Sie auf „Update from Repository“. Sie sollten ca. eine Ansicht wie die Nachfolgende Abbildung sehen.

 

7.    Der Download aller Dateien erfolgt in das Verzeichnis „typo3config/i10n/“. Wobei unterhalb für jedes Sprachkürzel ein Verzeichnis angelegt wird.
 
 

Unterhalb von den jeweiligen Sprachkürzel werden die Extension Verzeichnisse angelegt, in welche die Sprachdateien abgelegt werden.

Hinweis  Wenn Sie die nachfolgende Einrichtung für die Mehrsprachigkeit fertig gestellt haben, sollten Sie die Webseite ohne manuelle Bearbeitung der Sprachdatei in der jeweiligen Sprache angezeigt bekommen.

 

10.7.3        Vorbereitung der Website auf Mehrsprachigkeit

 

Zur Unterstützung der in TYPO3 eingebauten Mehrsprachigkeit nach dem „One-Page-Tree“ Konzept müssen Sie folgende Vorbereitungen durchführen.

 

1.    Klicken im Root Objekt (Weltkugel) auf „Neu“



2.    Wählen Sie aus den Objekten „Web-Site-Sprache“ aus.



3.    Geben als Namen für die Sprache „English“ ein und wählen Sie eine Flagge aus.



Speichern Sie das Objekt ab.

4.    Mit „Web“- „Liste“ und Auswahl des Root Objektes muss jetzt folgendes angezeigt werden.

 

5.    Wenn Sie mit der Maus über das Symbol der „Weltkugel in der Hand“ gehen muss die ID der Sprache hier „1“ angezeigt werden. Die primäre Sprache (Standardsprache) also besitzt immer die ID „0“.

 

10.7.4        Seiten in anderer Sprache anlegen

Sie können jetzt Seiten in der primären oder in der neu angelegten Sprache anlegen. Gehen Sie dazu wie folgt vor:

 

1.    Wählen „Web“- „Seite“ aus der Navigation



2.    Wählen Sie das gewünschte Baumobjekt das Sie in eine andere Sprache übersetzen wollen aus.



3.    Auf der rechten Seiten beim Seiteninhaltsfenster jetzt auf „Sprachen“ wechseln und die gewünschte Sprache auswählen.



4.    Sie können jetzt den Seitentitel in der neuen Sprache eingeben.



5.    Inhaltselemente für die neue Sprache anlegen.

 

Hinweis  Mit den Setup Optionen „sys_language_mode“ und „sys_language_overlay“ können Sie steuern was passieren soll, wenn die Seite oder ein Inhaltselement nicht in die ausgewählte Sprache übersetzt wurde. Standardmäßig wird dann immer der Inhalt aus der „Default“ Sprache angezeigt.

 

10.7.5        Sprachdefinitionen im Root Template anlegen

1.    Die IDs für die Sprache können Sie unter „Web“-„Liste“ auf dem Root Objekt (Weltkugel) ermitteln. Stellen Sie die Maus auf das Sprachsymbol damit die ID angezeigt wird.

 

2.    Im Setup Bereich von Root-Template wird folgendes eintragen unter Berücksichtigung der vorher ermittelten Sprach-ID von „1“ für „Englisch“ und „2“ für Spanisch. Außerdem wird unter dem „PAGE“ Objekt „linkVard“ für die Sprachumschaltung festgelegt.


[globalVar = GP:L = 0]
config {
 sys_language_mode = strict; 0
 sys_language_mode = content_fallback
 config.sys_language_overlay = hideNonTranslated
 sys_language_uid = 0
 language = de
 locale_all = de_DE
 htmlTag_langKey = de
}
[global]

# English language, sys_language.uid = 1
[globalVar = GP:L = 1]
config {
 sys_language_uid = 1
 language = en
 locale_all = en_UK
 htmlTag_langKey = en
}
[global]

# Espanol language, , sys_language.uid = 2
[globalVar = GP:L = 2]
config {
 sys_language_uid = 2
 language = es
 locale_all = es_ES
 htmlTag_langKey = es
}
[global]

temp.main.Template = TEMPLATE
temp.main.Template {

page = PAGE

# SprachVariable L initialisieren
page.config.linkVars = L

 

Hinweis  Achten Sie beim Einfügen der Sprachdefinition an die genaue Position vor dem „PAGE“ Objekt und vor dem „temp.mainTemplate“ welches die Subpart Inhalte übergibt.

 

10.7.6        Standardmenü für Sprachumschaltung (ohne Extension)

Sie können für die Sprachumschaltung ein spezielles Menü verwenden.

 

temp.langmenu = HMENU

temp.langmenu {

   special = language

   special.value = 0,1

   1 = TMENU

   1.NO = 1

}

 

Das Menü muss jetzt noch an einen Subpart übergeben werden:

 

# Erzeugen eines "temp" Objektes für den BODY des HTML Dokumentes

# Übergabe der Inhaltselemente an die Subparts des Dokumentes

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

...

     # Ersetze den Subpart ###language### durch das Sprachmenü „temp.langmenu“

   subparts.lang_switch < temp.langmenu

...

}
page = PAGE

 

# SprachVariable L initialisieren

page.config.linkVars = L

# Inhalte der temp Ojkete an das "page" Objekt übergeben

page.10 < temp.mainTemplate

page.headerData.10 < temp.headTemplate

 

10.7.7        Eigenes Menü  für Sprachumschaltung  (ohne Extension)

Um die Sprachumschaltung in die vorhandene Website einzubauen benötigen wir TYPO3 Skript und ein PHP Script das in die Seite inkludiert wird.

 

3.    Die Sprachauswahl als Menü im Setup Bereich vom Root-Template anlegen.

 

############ Menü für Sprachumschaltung ##################

temp.langmenu = COA

temp.langmenu {

  10 = HMENU

  10 {

    # deutsch und englisch

    special = language

    special.value = 0,1,3

   

    1 = GMENU

    1 {

      noBlur = 1

      NO = 1

      NO {

        XY = [10.w]+4,[10.h]+4

        backColor = white

        10 = IMAGE

        10.file = EXT:cms/tslib/media/flags/flag_de.gif || EXT:cms/tslib/media/flags/flag_uk.gif || EXT:cms/tslib/media/flags/flag_es.gif

        10.offset = 2,2

      }

      ACT < .NO

      ACT {

        10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif

        noLink = 1

        #backColor = #ff0000

      }

      USERDEF1 < .NO

      USERDEF1 {

        10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif

      }

      USERDEF2 < .ACT 

    }

  }

}

 

Die Sprachumschaltung wird hier mit Flaggen angezeigt. Wobei immer die aktive Sprache im Menü deaktiviert wird. Die „special.value“ des Menüs „0,1,3“ müssen Sie Ihren IDs der angelegten Sprachen anpassen.

4.    Das Menü muss jetzt noch an einen Subpart übergeben werden:

 

# Erzeugen eines "temp" Objektes für den BODY des HTML Dokumentes

# Übergabe der Inhaltselemente an die Subparts des Dokumentes

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

...

     # Ersetze den Subpart ###language### durch das Sprachmenü „temp.langmenu“

   subparts.lang_switch < temp.langmenu

...

}
page = PAGE

 

# SprachVariable L initialisieren

page.config.linkVars = L

# Inhalte der temp Ojkete an das "page" Objekt übergeben

page.10 < temp.mainTemplate

page.headerData.10 < temp.headTemplate

 

10.7.8        Sprachumschaltung in Website mit „sr_language_menu“

Sie können die Sprachumschaltung auch mit der Extension „sr_language_menu“ in Ihre Website einbauen. Diese Art der Sprachumschaltung benötigen Sie auch wenn Sie die Extension „templvoila“ verwenden. Gehen Sie dazu wie folgt vor.

 

1.    Installieren der Extension „static_info_tables“ durchführen (Voraussetzung).

2.    Installieren Sie die Extension „sr_language_menu“.

3.    Geben Sie folgendes TYPO3 Skript im Setup Bereich vom TYPO3 Root Template ein um die Sprachauswahl als Liste anzuzeigen.

 

plugin.tx_srlanguagemenu_pi1 {

                defaultLanguageISOCode = DE

                  # Legt die Anzeige der Sprachauswahl fest (2: Liste, 1: Auswahlliste, 0:Flagge)

                defaultLayout = 2
                  # Zeigt inaktive Sprachena an

                showInactive = 1

                useIsoLanguageCountryCode = 1

                  # Anzeige der Links festlegen

                link.INACT.doNotLinkIt = 1

                link.CUR.doNotLinkIt =  1

                link.NO.stdWrap.wrap = &lt;span class="NO"&gt;|&lt;/span&gt;

                link.CUR.stdWrap.wrap = &lt;span class="CUR"&gt;|&lt;/span&gt;

                links.stdWrap.split {

                               token = {

                                               $plugin.tx_srlanguagemenu_pi1.token

                                }

                                wrap = | &lt;span class="SPC"&gt;  |  &lt;/span&gt; |*| | &lt;span class="SPC"&gt;  |  &lt;/span&gt; |*| |

                }

}

 

4.    Jetzt müssen Sie noch den Inhalt des Plugins an der gewünschten Stelle im Setup Bereich des Root Templates übergeben.

templ.lang_menu < plugin.tx_srlanguagemenu_pi1

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

     # Ersetze den Subpart ###lang_switch### durch das Sprachmenü

   subparts.lang_switch < temp.lang_menu

}

 

10.7.9        Automatische Spracherkennung mit "rlmp_language_detection“

Mit der Extension „rlmp_language_detection“ können Sie eine automatische Spracherkennung einbauen. Die Website wird dann immer auf die erkannte Sprache des Browser automatisch umgestellt. D.H. ein auf Englisch eingestellter Browser erhält sofort die englische Seite angezeigt.

 

10.7.10    Fehler bei Mehrsprachigen (Multilanguage) Webseiten

 

10.7.10.1    Fehler die Sprachumschaltung mit Symbole wird nicht angezeigt

 

Ursache:

Nach Übersiedlung der Website wird die Sprachumschaltung nicht mehr angezeigt. Auf der alten Website hat die Sprachumschaltung aber noch funktioniert.

 

Anstatt der Flaggen wir nichts angezeigt.

 

Abhilfe:

Öffnen Sie das TYPO3 Install Tool und kontrollieren Sie unter „All Configuration“ ob die Option „image_processing“ aktiviert ist.

 

 

Sollte dies nicht helfen, kontrollieren Sie die Grafikfunktionen vom System wie unter Kapitel „8.4 TYPO Grafiktest durchführen“ erklärt.

 

10.7.10.2    Fehler im BE nach Umstellung der Website auf „utf8‘ kommt „Oops, an error occured!“

 

Nach Umstellung der in der Datei „localconf.php“ im Verzeichnis „typo3conf“ auf:

“$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8';”

kommt folgende Fehlermeldung beim Öffnen vom Backend (BE) mit “Forced charset not found: The forced character set "utf8" was not found in t3lib/csconvtbl/”.

Das Frontend (FE) der Website kann ohne Probleme geöffnet werden.

 

 

Abhilfe:

Der richtige Eintrag in die Datei „locallang.php“ muss „utf-8“ lauten.
“$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';”

 

10.7.10.3    Fehler beim Einfügen der Sprachdefinition kommt „Oops, an error occured!“

 

Es erscheint die Fehlermeldung „The page is not configured! [type= 0][]“

 

 

Ursache:

Im Setup Bereich vom TYPO3 Root Template wurde folgende Sprachdefinition nach dem „PAGE“ Objekt eingefügt. Außerdem wird das „temp.mainTemplate“ schon vor dem „PAGE“ Objekt definiert. Die Sprachdefinition muss aber schon vor dem Objekt „temp.mainTemplate“ festgelegt werden.

 

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

page = PAGE

# SprachVariable L initialisieren

page.config.linkVars = L

 

#config.sys_language_mode = content_fallback; 1,0

[globalVar = GP:L = 0]

config {

 sys_language_mode = strict; 0

 sys_language_mode = content_fallback; 0

 #config.sys_language_overlay = hideNonTranslated

 sys_language_uid = 0

 language = de

 locale_all = de_DE

 htmlTag_langKey = de

}

[global]

# Inhalte der temp Ojkete an das "page" Objekt übergeben

page.10 < temp.mainTemplate

page.headerData.10 < temp.headTemplate

 

Abhilfe:

Verschieben Sie die Sprachdefinitionen vor das „temp.mainTemplate“ und auch vor das „PAGE“ Objekt dann sollte der Fehler wieder verschwinden.

 

#config.sys_language_mode = content_fallback; 1,0

[globalVar = GP:L = 0]

config {

 sys_language_mode = strict; 0

 sys_language_mode = content_fallback; 0

 #config.sys_language_overlay = hideNonTranslated

 sys_language_uid = 0

 language = de

 locale_all = de_DE

 htmlTag_langKey = de

}

[global]

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

page = PAGE

# SprachVariable L initialisieren

page.config.linkVars = L

 

 

10.7.10.4    Fehler im FE nach Umstellung der Website auf „utf-8‘ werden Umlaute nicht angezeigt

 

Im Firefox werden folgende Zeichen angezeigt:

   

 

Im Internet Explorer sieht es so aus:

 

 

Abhilfe:

Sie können Ihre Seiten mit der Extension „convert2utf8“  in „utf8“ konvertieren. Dies sollten Sie durchführen bevor Sie in der Datei „localconf.php“ den Eintrag „$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8';“ vornehmen.

                                                                                                                                 

Installieren Sie die Extension „convert2utf8“ und konvertieren Sie alle Ihre Seiten in den „utf8“ Zeichensatz.



Im Seitenbaum mit der linken Maustaste auf das Seitensymbol der Rootseite klicken und "Convert to utf-8" auswählen. Dann alle Seiten die umgewandelt werden sollen selektieren und den Anweisungen folgen.

 

 

Wählen Sie den Characterset der alten Seite aus und klicken Sei dann auf „Convert page(s)“.

 

 

Jetzt können Sie die TYPO3 Konfiguration auf „utf-8“ umstellen.

 

10.7.10.5    Fehler  bei „Convert to UTF-8“ kommt „Call to undefined method t3lib_div::fixed_lgd_pre()…“

 

Fatal error: Call to undefined method t3lib_div::fixed_lgd_pre() in /srv/www/htdocs/rpw2/typo3conf/ext/convert2utf8/cm1/index.php on line 91

 

Behebung:

 

 

 

10.7.10.6    Fehler bei den Links wird nach Sprachumschaltung nicht “&L=1”,”&L=2“, etc. angehängt

 

Im Moment sieht eine Links nach einer Sprachauswahl so aus:

http://www.realpowerwork.com/index.php?id=12

 

Richtigerweise sollte er aber nach der Sprachumschaltung so aussehen:

http://www.realpowerwork.com/index.php?id=12&L=1

 

Abhilfe:

Kontrollieren Sie ob Sie im TYPO3 Root Template die Sprachvariable „L“ initialisiert haben.

 


page = PAGE

# SprachVariable L initialisieren
page.config.linkVars = L

config {
 sys_language_mode = strict; 0
 sys_language_mode = content_fallback
 config.sys_language_overlay = hideNonTranslated
 sys_language_uid = 0
 language = de
 locale_all = de_DE
 htmlTag_langKey = de
}
[global]

 

10.7.10.7    Fehler bei den Print oder Tip-A-Fried Link wird nach Sprachumschaltung immer “&L=” angehängt

 

Nachdem die Sprache umgestellt wurde wird die Sprachvariable nicht gesetzt es wird immer nur “&L=” ohne eine Sprachnummer angehängt.

 

Ursache:

Dieser Fehler tritt ab TYPO3 4.6 auf wenn im TypoScript für die Definition der Variable noch “GPvar:L” verwendet wird. Den “GPvar” gibt es bei der TYPO3 4.6 Version nicht mehr,da er schon als “deprecated” angekündigt wurde.

 

Abhilfe:

Ändern Sie alle Variablen Definitionen für die Sprachvariable von “GPvar:L” auf “GP:L” um.

Ein Beispiel:

# holt aktuellen Sprachcode

  30 = TEXT

  30.data = GP:L

 

 

 

10.7.10.8    Fehler bei Spanischen Texten wird „Ó statt Sonderzeichen anzeigt

 

Beispiele falsche Text Anzeigen:

 

Ahora está … electrónico:

Repite el código

 

Ursache:

Nicht Latin Sonderzeichen werden nur dann richtig dargestellt wenn der Zeichensatz für TYPO3 auf „utf8“ umgestellt wird.

 

Abhilfe:

In der Datei „locallang.php“ im Verzeichnis „typo3conf“ folgendes eintragen.

 

$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8'; 

 

 

10.7.10.9    Fehler im Template Analysis oder im Admin Panel TS-Rendering

 

Wenn im BE unter „Templates“ die „Template Analysis“ vom Root Template durchgeführt wird, erscheint der Fehler „ERROR: …: Objekt Name String „[globalVar“ contains invalid character „[„. Must be alphanumeric or one of: „_-„

 

 

oder in Admin Panel mit TS-Rendering:

 

Line 4690: Object Name String, "[globalVar" contains invalid character "[". Must be alphanumeric or one of: "_-."

 

Dieser Fehler wird angezeigt wenn im Root Template mit “config.admPanel = 1” das Admin Panel aktiviert wird und danach in diesem „Nachrichten anzeigen“ und „TS-Rendering erzwingen“ ausgewählt wird.

 

Ursache:

Noch wurde noch nicht herausgefunden. Doch diese Fehlermeldung beeinflusst die Funktion der Website nicht. Die Sprachumschaltung funktioniert einwandfrei.

 

Abhilfe:

Keine notwendig, Fehler einfach ignorieren.

 


10.7.10.10 Fehler im Admin Panel „Locale ‘en_UK’ not found.“ oder “’en_UK.utf-8’ not found.”

 

 

Abhilfe:

Es gibt keine sogenannte „locale“ mit dem Namen „en_UK“ sondern nur mit „en_GB“ oder „en_US“, etc.
Sie können sich unter Linux mit „locale –a“ alle vorhanden anzeigen lassen.
Richtig ist hier folgender Eintrag in der Sprachumschaltung:

[globalVar = GP:L=1]

config {

   sys_language_uid = 1

   language = en

   locale_all = en_GB.utf-8

   htmlTag_langKey = en

}

[global]

 

Das „.utf-8“ können Sie je nach verwendetem Zeichensatz auch weglassen.    

10.8    Grundeinstellungen für HTML Formatierungen

TYPO3 setzt beim Rendering der Seite für die Seiten und Inhaltselemente bestimmte Formatierungen die standardmäßig vorgegeben sind. Oft sind aber diese Formatierungen nicht erwünscht oder zerstören das korrekte Design der Seite. Nachfolgend finden Sie eine Liste von Einträgen die Sie in den Setup Bereich des Templates vornehmen können um solche Formatierungen zu entfernen.

 

# Entfernt alle CLEAR.GIF aus dem HTML Code

tt_content.image.20.spaceBelowAbove = 0

tt_content.header.stdWrap.space = 0|0

tt_content.stdWrap.space = 0|0

tt_content.stdWrap.spaceBefore = 0

tt_content.stdWrap.spaceAfter = 0

lib.stdheader.stdWrap.space = 0|0

 

# Entfernt CLEAR.GIF hinter den Überschriften

tt_content.text.20.parseFunc.tags.typohead.stdWrap.space = 0|0

 

# Folgender Code löscht das <p style='margin:0 0 0 0 '> Tag

tt_content.text.20.parseFunc.nonTypoTagStdWrap.encapsLines.addAttributes {

                P.style=

}

 

# Anker vor Content entfernen

tt_content.stdWrap.dataWrap =

tt_content.noANameTagForFirstRecord = 1

 

Einstellungen die Sie in der CSS Datei für standardmäßige Formatierungen vornehmen können:

 

# Abstände bei  <p> Tags definieren

p {

                margin: 0;

                padding: 0;

}

 

# Den normalen Text von Inhaltselementen formatieren

.bodytext {

                font-family: Verdana,  Arial, Helvetica, sans-serif;

                font-size: 11px;

                margin: 0;

                text-align: left;

}

 

# Beim Inhaltselement Bild das Bild zentrieren

.imgtext-table {

                margin: 0 auto;

}

 

 

 


10.9    Verzeichnisstruktur für CMS unter „fileadmin“

Die Verzeichnis und Dateien für TYPO3 werden unter „fileadmin“ angelegt. Dies ist das einzige Verzeichnis auf das man direkt aus dem Backend oder Frontend zugreifen kann.

 

Hinweis  Damit eine klare Trennung zwischen Design und Inhalt in der Verzeichnisstruktur besteht, wurden alle für das Design zuständigen Dateien oder Verzeichnisse unter das Verzeichnis „fileadmin/templates/“  und die darin enthaltenen Unterverzeichnisse verschoben.

 

  Baumansicht vom TYPO3 Backend Modul

 

Welche Dateien in die jeweiligen Verzeichnisse abgelegt werden, wird in dem nachfolgenden Kapitel beschrieben.

 

 


11    Erstellung von Menüs

11.1    Seitenstruktur in TYPO3 anlegen

Damit Menüs erstellt werden können müssen schon Seiten im TYPO3 vorhanden sein.

Die Seitenstruktur im Backend wurde, so wie angezeigt angelegt.

 

 


11.2    Einrichtung Navigation für die Website

 

Das Menü sollte lt. Vorlage vom HTML Template so aussehen:

 

 

11.2.1        Vertikales Textmenü mit 2 Ebenen

Dieser Menü Typ sollte vorrangig zur Erstellung von Menüs verwendet werden. Dabei gibt es hier wieder die Unterscheidung zwischen einer Ankerliste (mit Zeilenvorschub), einer Liste mit <ul> und <li> Tags oder einer Tabelle. Tabellen sollten wenn Barrierefreiheit erwünscht ist vermieden werden. Zu bevorzugen ist eine Formatierung als Liste mit <ul> und <li> Tags.

 

Einträge im Template Setup Bereich:

 

# Erstellt das Hauptmenü

temp.menu = HMENU

temp.menu {

  1 = TMENU

  1 {

     expAll = 1

     noBlur = 1

     wrap = <ul class="menu_list1">|</ul>

     NO {

           allWrap = <li>|</li>

           ATagParams = class="menu_link_NO"

       }

      RO < .NO

      RO.ATagParams = class="menu_link_RO"

      CUR < .NO

      CUR.ATagParams = class="menu_link_CUR"

   }

 

   2 < .1

   2 {

      wrap = <ul class="menu_list2">|</ul>

      NO {

            ATagParams = class="menu_link_NO"

       }

      RO < .NO

      RO.ATagParams = class="menu_link_RO"

      CUR < .NO

      CUR.ATagParams = class="menu_link_CUR"

   }

}

 

 

/*********** #navBar link styles ***********/

 

#navBar ul a:link, #navBar ul a:visited {

            display: block;

            color: #101033;

        background-color: #bfbbd0;

}

 

#navBar ul.menu_list1 a:hover, #navBar ul.menu_list2 a:hover {

            text-decoration: none;

            color: #666666;

        background-color: #dddddd;

}

#navBar ul li ul a:active, #navBar ul li a:active {

            text-decoration: none;

            color: #666666;

        background-color: #dddddd;

}

 

#navBar ul.menu_list1 {list-style: none; margin: 0; padding: 0; font-weight: 700;}

#navBar ul.menu_list2 {list-style: none; margin: 0 10px; padding: 0; font-weight: 300;}

 

 

/* hack to fix IE/Win's broken rendering of block-level anchors in lists */

#navBar li {

            border: solid 1px #BFBBD0;

}

 

/* fix for browsers that don't need the hack */

html>body #navBar li {border-bottom: none;}

 

/*********** #siteLinks styles ***********/

 

#siteLinks{

            margin: 0px;

        padding: 0px 10px; /* Für die Zentrierung von Hover und Active Farbalken */

            font-size: 90%;

            text-decoration: none;

}

 

#siteLinks a {

            display: block;

        padding: 0px;

        padding-top: 2px; /* Für den Abstand der Menüzeilen */

            text-decoration: none;

}

 

 

11.2.2        Vertikales grafisches Menü (GMENU) mit 2 Ebenen

 

Der Einsatz eines grafischen Menüs ist, unter Berücksichtigung auf Barrierefreiheit, zu vermeiden. Wenn Sie dennoch grafische Menüs verwenden wollen, so müssten Sie die Barrierefreiheit mit eigenen Extensions nachrüsten z.B. „css_styles_imgtext“ oder „sl_css_imgtext“.

 

Voraussetzung zur Erstellung des unten angeführten Menüs ist die Schriftart „arial.ttf“ diese muss in das Verzeichnis „fileadmin/templates/fonts“ kopiert werden.

 

Einträge im Template Setup Bereich:

 

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_HEADER

}

 

temp.menu = HMENU

temp.menu {

  1 = GMENU

  1 {

     expAll = 1

     noBlur = 1

     NO {

           noLink = 1

           wrap = <br>|

           XY = 165,13

           backColor = #bfbbd0

           10 = TEXT

           10.text.field = title

           10.offset = 10,12

           10.fontFile = fileadmin/templates/fonts/arial.ttf

           10.fontSize = 12

           10.fontColor = #101033

           10.align = left  

       }

 

       RO < .NO

       RO.backColor = #dddddd

       RO.10.fontColor = #666666

       RO = 1

       CUR < .NO

       CUR.noLink = 1

       CUR.backColor = #dddddd

       CUR.10.fontColor = #666666

       CUR = 1

   }

 

   2 = GMENU

   2 {

      noBlur = 1

      NO {

            wrap = |

            XY = 165,13

            backColor = #bfbbd0

            10 = TEXT

            10.text.field = title

            10.offset = 18,12

            10.fontFile = fileadmin/templates/fonts/arial.ttf

            10.fontSize = 12

            10.fontColor = #555588

            10.align = left  

       }

       RO < .NO

       RO = 1

       RO.backColor = #dddddd

       RO.10.fontColor = #666666

       CUR < .NO

       CUR = 1

       CUR.backColor = #dddddd

       CUR.10.fontColor = #666666

   }

 

}

 

# Erzeugen eines “temp” Objektes für den BODY des HTML Dokumentes

# Übergabe der Inhaltselemente an die Subparts des Dokumentes

temp.mainTemplate = TEMPLATE

 

Verwendete CSS Formatierung:

 

#navBar{

            float: left;

            width: 169px;

            background-color: #BFBBD0;

/*          border-right: 1px solid #cccccc;

            border-bottom: 1px solid #cccccc; */

            padding: 0px;

            padding-bottom: 15px;

            margin-left: 2px;

}

….

/*********** #siteLinks styles ***********/

 

#siteLinks{

            margin: 0px;

        padding: 0px 2px; /* Für die Zentrierung von Hover unn Active Farbbalken */

            font-size: 90%;

            text-decoration: none;

}

 

#siteLinks a {

            display: block;

        padding: 0px;

        padding-top: 2px; /* Für den Abstand der Menüzeilen */

            text-decoration: none;

}

 

11.3    Einrichtung des Klickpfad Menüs (Breadcrumb)

Die Einrichtung eines Klickpfad oder auch Breadcrumb Menü erfolgt wieder mit einer eigenen Menüdefinition im Setup Bereich:

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_HEADER

}

 

temp.breadcrumb = HMENU

temp.breadcrumb.special = rootline

temp.breadcrumb.special.value = 1

temp.breadcrumb.1 = TMENU

temp.breadcrumb.1.noBlur = 1

temp.breadcrumb.1.NO {

  linkWrap = | &nbsp;<font style="color:#666666;">&gt;</font>&nbsp; |*|

  ATagParams = style="text-decoration:none;"

}

temp.breadcrumb.1.CUR = 1

temp.breadcrumb.1.CUR {

  linkWrap = <font style="color:#666666;">|</font>

  doNotLinkIt = 1

}

 

temp.menu = HMENU

temp.menu {

  1 = GMENU

 

Verwendete CSS Formatierung:

 

/************* #breadCrumb styles *************/

 

#breadCrumb{

            font-size: 60%;

            padding: 2px 0px 2px 10px;

            text-decoration: none;

}

 

11.4    Einrichtung des Bottom Menüs (Footerlinks)

Für die Einrichtung des Bottom Menü wird nur die zweite Ebene aus dem zweistufigen Menü verwendet. Ausgehend von der angeführten Site wird ein Menü aus allen vorhandenen Unterseiten erstellt. Es wird zuerst auf der 1. Ebene eine Seite angelegt die auf „Nicht im Menü“ gesetzt wird. Darunter legen Sie auf der 2. Ebene Ihre Seiten an, die im Bottom Menü angezeigt werden. Als „Typ“ für diese Seiten verwenden Sie „Standard“ oder „Erweitert“.

 

Im Backend wurde folgende Seitenstruktur angelegt:

 

 

Im Template Setup Bereich sollten folgendes stehen:

 

       CUR.backColor = #dddddd

       CUR.10.fontColor = #666666

   }

 

}

 

temp.footermenu = HMENU

temp.footermenu.special = directory

temp.footermenu.special.value = 2

temp.footermenu.1 = TMENU

temp.footermenu.1.noBlur = 1

temp.footermenu.1.NO {

  linkWrap = | &#124;&nbsp;|*||*||&nbsp;&nbsp;©2011 Real Power Work

  ATagParams = style="text-decoration:none;"

}

 

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

 

Im Block für die Menüerstellung wird das „Spezial“ Attribute auf die Page IDs 22 und 26 zugewiesen.

Im unteren Teil des Beispiels wurde die Zuweisung zum TEMP Objekt „mainTemplate“ erweitert.

 

11.5    Erstellung eines Sitemap Menüs

Es soll ein sogenanntes Sitemap Menü aus drei Ebene als Listenmenü (mit <ul> und <li>) erstellt werden. Die einzelnen Auswahlpunkte des Menüs werden als normale Textlinks angezeigt.

 

Zur Vorbereitung wir auf der Seite für die Sitemap als Inhaltstyp „Menü/Sitemap“ gewählt und als „Menü Typ:“ nochmals „Sitemap“ aus. Als Ausgangspunkt wird die Rootseite der Website gewählt:

 

Das Menü das normalerweise mit dieser Einstellung erstellt wird, kann jetzt durch TypoScript im Setup Bereich mit eigenen Menüanweisungen und Anpassungen überschrieben werden.

Der Vorteil ist dabei, Sie können das Standard Inhaltsobjekt für Sitemap weiterhin verwenden, und ändern nur das erstellte Menü nach Ihren Anforderungen.

 

Eintrag in Template Setup Bereich zum Überschreiben des Menüs:

 

tt_content.menu.20.2 = HMENU

tt_content.menu.20.2.stdWrap.wrap =

tt_content.menu.20.2.1 = TMENU

tt_content.menu.20.2.1 {

    noBlur = 1

    expAll = 1

    target = _self

    wrap = <ul class=sitemap>|</ul>

    NO.allWrap =

    NO.linkWrap =

    NO.wrapItemAndSub = <li class=”sitemap1”>|</li>

    NO.allWrap = | <span class=”usb”>. </span>

    NO.ATagBeforWrap = 0

 

    # Übergabe aller Einstellungen in Objekt 2 aus Objekt 1 für 2 Ebene

    2 < .1

    2.wrap = <ul>|</ul>

    2.NO.wrapItemAndSub = <li class=”sitemap2”>|</li>

 

    # Übergabe aller Einstellungen in Objekt 3 aus Objekt 2 für 3 Ebene

    3 < .2

    3.NO.wrapItemAndSub = <li class=”sitemap3”>|</li>

}

 

Jede Menüebene kann über eine eigene CSS Klasse formatiert werden. Zusätzlich wurde noch der Eintrag „<span class=“usb“>. </span> für Screenreader (Anforderung bei Barrierefreiheit der Website) eingefügt. Durch den Punkt wird die Stimme in der Aussprache durch den Screenreader nach jedem Menüpunkt gesenkt.

 

 

Eintrag in CSS für Sitemap Menü:

 

/****** class styles for sitemap ********/

.sitemap1{

        list-style: none;        

        font-weight: 700;

}

.sitemap2{

        list-style: none;

        font-weight: 300;

}

.sitemap3{

        list-style: none;

        font-weight: 300;

}

 

/****** class styles for screen reader ********/

.usb{

        display: block;

        position: absolute;

        left: -3000px;

        height: 0px;

        width: 0px;

}

 

Die Übergabe des Menüs muss hier an einen vorhandenen Menüpunkt gehängt werden. Der Menüpunkt wird durch das Bottom Menü erzeugt.

 

11.6    Funktion „Top“ in Webseite einbauen

Zum allgemeinen Bedienungskomfort einer Webseite gehört der Link „Top“ (oder „gehe zum Anfang“) am unteren Ende einer Seite. Mit dieser Funktion wird der Benutzer wieder an den Anfang der Seite zurückgesetzt.

 

Im Template Setup Bereich wird dies mit folgendem Eintrag durchgeführt:

 

temp.gotop = HTML

temp.gotop {

   value (

       <a href="#top"><img src="fileadmin/templates/images/icons/button_top.gif" alt="zum Anfang" border=0></a>      

   )

  noBlur = 1

}

 

# Zusammefassung aller Buttons in einen Objekt

temp.function = COA

temp.function {

   1 < temp.gotop

}

 

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

   …

    # Ersetze der Subpart ###function### durch das Objekt “temp.function”

   subparts.function < temp.function

   …

}

 

 

11.6.1        Fehler bei der Menüerstellung

 

11.6.1.1       Fehler mit SPC unter TYPO3 4.4x „Please check that this is not a problem for you.“

 


11.6.1.2       Fehler mit RealURL wird bei interne Link für „Top“ wird immer die Startseite aufgerufen

 

Für RealURL sollte folgendes im Template Setup Bereich eingetragen werden:

 

… 

# nächste Zeile wird benötigt um z.B. "href='#top" umzusetzen

config.prefixLocalAnchors = all

 

Eine Alternative wäre folgender Code, wenn „prefixLocalAnchors“ nicht eingesetzt werden kann. Der Nachteil dieser Code ist um etliches langsamer, weil die komplette Seite neu geladen wird:

 

# Button für zurück zum Anfang der Seite

temp.gotop = COA

temp.gotop {

  # holt die Domain

  1 = TEXT

  1.data = getenv:HTTP_HOST

  # holt den kompletten Pfad

  2= TEXT

  2.data = getenv:REQUEST_URI

  # setzt die Texte zusammen

  1.wrap = <a href="http://|

  2.wrap = |"><img src="fileadmin/templates/images/icons/top_btn.png" alt="zum Anfang" border="0"></a>&nbsp;

}

 

 


12    Einrichtung von TYPO3 Extensions

12.1    Extension Auflistung im „Ext Manager“

 

Folgende Extension werden später im Kapitel der „Einrichtung der TYPO3 Extensions“ erklärt. Achten Sie auf die angegebenen Versionsnummern und die Reihenfolge weil manche Extensions für ihre Funktion die vorherigen Extensions benötigen. Dies ist jetzt keine Aufforderung dass Sie alle aufgelisteten Extensions installieren sollten. Lesen Sie zuerst die Extension Beschreibung und ermitteln Sie, welche Extension Sie benötigen um Ihre Anforderungen an das CMS System zu erfüllen.

 

Gehen Sie in der Navigation auf „Extension Manager“ und wählen Sie die Ansicht „Loaded Extension“ aus.

 

Liste der verwendeten Extensions (unter „Loaded Extensions“):

 

 

 

 

 

 

 

 Backend Modules

 

 

 

Help>TYPO3 Manual

cshmanual

1.0.0

System

Stable

 

 

 

Media (DAM)

dam

1.2.3

Lokal

Stable

 

 

 

Media>Categories

dam_catedit

1.2.0

Lokal

Stable

 

 

 

phpMyAdmin

phpmyadmin

4.11.8

Lokal

Stable

 

 

 

Recycler

recycler

1.1.0

System

Stable

 

 

 

System Reports

reports

1.1.0

System

Stable

 

 

 

User>Open Documents

opendocs

1.0.0

System

Stable

 

 

 

 

 Miscellaneous

 

 

 

Extbase Framework for Extensions

extbase

1.3.1-devel

System

Stable

 

 

 

Scheduler

scheduler

1.1.0

System

Stable

 

 

 

Static Info Tables

static_info_tables

2.2.0

Lokal

Stable

 

 

 

 

 Backend

 

 

 

Editor with syntax highlighting

t3editor

1.5.1

System

Beta

 

 

 

htmlArea RTE

rtehtmlarea

2.1.7

System

Stable

 

 

 

Static Templates

statictemplates

1.0.0

System

Stable

 

 

 

TSConfig / TypoScript Object Reference

tsconfig_help

1.1.0

System

Stable

 

 

 

Versioning Management

version

4.5.1

System

Stable

 

 

 

Workspaces Management

workspaces

4.5.1

System

Stable

 

 

 

 

 Frontend

 

 

 

Captcha Library

captcha

1.1.1

Lokal

Beta

 

 

 

CSS styled content

css_styled_content

1.0.0

System

Stable

 

 

 

Fluid Templating Engine

fluid

1.3.0

System

Beta

 

 

 

Frontend Editing

feedit

0.1.0

System

Beta

 

 

 

 

 Frontend Plugins

 

 

 

Formhandler

formhandler

0.9.17

Lokal

Beta

 

 

 

Frontend Filemanager

air_filemanager

0.9.27

Lokal

Beta

 

 

 

Image-, Flash-, Slideshow rotation

ric_rotation

1.9.17

Lokal

Stable

 

 

 

Indexed Search Engine

indexed_search

2.12.0

System

Stable

 

 

 

Modern Guestbook / Commenting system

ve_guestbook

2.10.1

Lokal

Stable

 

 

 

News

tt_news

3.1.0

Lokal

Beta

 

 

 

Searchbox for Indexed Search Engine

macina_searchbox

2.2.0

Lokal

Stable

 

 

 

Template Auto-parser

automaketemplate

0.1.3

Lokal

Stable

 

 

 

Tip-A-Friend

tipafriend

1.2.4

Lokal

Stable

 

 

 

 

 

 

TYPO3 skin

t3skin

4.5.0

System

Stable

 

 

12.2    Backup einer installierten Extension

1.    Wechseln Sie im Backend auf „Ext Manager“.

2.    Klicken Sie auf den „Title:“ der Extension z.B. „News“

3.    Es werden jetzt die „DETAILS:“ oder die „CONFIGURATION“ der Extension  angezeigt.

4.    Wechseln Sie jetzt im Drop-Down Menü „Backup/Delete“ aus.



5.    Klicken Sie jetzt auf den Text „Click here to download extension without compression“.



6.    Wählen Sie „Speichern“ im Downloadfenster und wählen Sie ein Verzeichnis aus in dem Sie die Sicherungsdatei ablegen wollen.




12.3    Update von einer installierten Extension

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12.3.1.1       Fehler bei Update einer Extension kommt „…could not be deleted!“

 

Update einer Extension aus dem „Extension Manager“ – „Check for extension updates“.

Nach Auswahl einer Extension z.B. hier „phpmyadmin“ kommt nach dem klicken auf „Import/Update“ kommt die Fehlermeldung „…could not be deleted!“

 

 

Abhilfe:

Vergeben Sie die richtigen Berechtigungen für das „typo3conf/ext“ Verzeichnis.

 

SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp typo3conf/ext
SLES11:/srv/www/htdocs/newcms # chmod -R 770 typo3conf/ext

12.3.1.2       Fehler bei Update einer Extension kommt „The T3X file could not be fetched“

 

 

Abhilfe:

Kontrollieren Sie ob der PHP Server das Modul „curl“ installiert hat.

 

 


12.4     Extension Full Backup (w4x_backup)

12.4.1        Was macht diese Extension?

Die “Full Backup” Extension erlaubt dem „Admin“ Backend Benutzer (wenn in der ACL freigeschaltet) eine einfache volle TYPO3 Installation-Backup und –Rücksicherung durchzuführen.

Das Backup wird aus folgenden Verzeichnissen erstellt:

·         “typo3conf/localconf.php” Datei oder das ganze Verzeichnis (mit inkludiere…typo3conf…!)

·         “fileadmin” directory

·         “uploads” directory

·         ein kompletter Datenbank Dump (mysqldump) der TYPO3 MySQL Datenbank

 

Die letzte Version der Extension ist die V0.9.2 vom Jahr 2008

 

Hinweis  Diese Extension kann immer dann eingesetz werden, wenn Sie ein Backup einer vorhande TYPO3 Installation durchführen wollen. Bei der Rücksicherung auf den gleichen Server sollte es keine Probleme geben. Aber für eine Rücksicherung auf einem anderen Server aber oder in eine andere TYPO3 Instanz sollte diese Extension nicht verwendet werden. Sicher Sie in diesem Fall die Datenbank mit dem „sqldumper“ und die Dateien über einen FTP Client.

 

WICHTIG  Die Extension bringt unter TYPO3 4.6 einen Fehler.

 

12.4.2        Installation w4x_backup

Hinweis  Bei der Installation können Fehler über nicht ausreichende Berechtigungen auftreten. Die Extension benötigt aus irgendeinem Grund alle Rechte bei der Installation, also auch für “Other”, auf das Extension Verzeichnis “w4x_backup”. Nach der Installation kann die Berechtigung für “Other” wieder entfernt werden.

 

1.    Installieren Sie die Extension „w4x_backup“ über den Extension Manager.

2.    Klicken Sie auf „Make Updates“ wenn die Extension dies verlangt.


3.    Als Pfad für das „MySqlDump command geben Sie „/usr/bin/mysqldump“.

4.    Als Pfad für das „MySql command“ geben Sie „/usr/bin/mysql“.

5.    Alle anderen Einstellungen können Sie im Moment so belassen wie Sie sind. Klicken Sie jetzt auf „Update“.

6.    Wählen Sie jetzt aus der Navigation „Full Backup“ aus (eventuell Refresh ausführen).

7.    In der Auswahlbox wird automatisch „Backup“ ausgewählt. Sie brauchen jetzt nur mehr auf „Backup jetzt erstellen!“ klicken.

8.    Kontrollieren Sie im Verzeichnis „typo3temp“, ob eine Backup Datei angelegt wurde.

9.    Öffnen Sie die gepackte Datei und kontrollieren Sie, ob die MySql Datenbank (eine Datei mit der Endung „sql“) mit gesichert wurde.

 

12.4.3        Sicherung (Backup) durchführen

Die Extension muss dazu, wie unter Installation angeführt installiert sein.

 

1.    Wählen Sie aus dem Navigation  “Tools” à “Full Backup” aus.

2.    Wählen Sie (wenn nicht schon eingestellt) im Drop-Down Menü auf der rechten Seite „Backup“ aus. Es erscheint das unten angezeigte Backup-Fenster.

 

 

3.    Klicken Sie jetzt auf „Backup jetzt erstellen!“.

4.    Wenn alles klappt erscheint folgende Meldung.

 

 

5.    Wenn die Meldung “There was an operation report” angezeigt wird, ist ein Fehler beim Backup aufgetreten. Dies hängt meist mit den Berechtigungen des Benutzers zusammen unter welchen der Apache Server auf diesem Rechner läuft.

 

6.    Wenn Sie auf “Operation Log” klicken können Sie sich das Protokoll des Backups ansehen. Sehen Sie sich besonders die Einträge unter “Problematic files:“ an und versuchen Sie diese Fehler (meist Berechtigungsprobleme) zu beheben.
Anmerkung: Vorsicht wenn gar nichts angezeigt wird, heißt das nicht, dass ein Backup erfolgreich erstellt wurde. Kontrollieren Sie immer ob die Backup Datei vorhanden ist.

7.    Wenn sehr viele Einträge unter “Problematic files:“ angezeigt werden, sollten Sie nochmals die Berechtigung auf Ihr TYPO3 Verzeichnis kontrollieren oder neu setzen.
Bei einen open SUSE 10 Server können Sie die Berechtigung mit folgenden Befehlen auf alle notwendigen TYPO3 Verzeichnisse innerhalb des Verzeichnisses „rpw“ setzen:

cd /srv/www/htdocs/rpw

chown –R wwwrun fileadmin typo3conf typo3temp uploads

chmod –R u+rwx fileadmin typo3conf typo3temp uploads

 

8.    Die Backup Datei wird im Verzeichnis „./typo2temp/w4x/“ mit einen ähnlichen Namen wie:
www.home.com-2007-06-17-96e5a50a69ad1f389967.tar.gz angelegt.

 


12.4.4        Fehler in w4x_backup

12.4.4.1       Fehler bei Installation von w4x_backup

Beim Versuch die Extension zu installieren erscheint folgende Meldung.

 

„Warnung: fopen(/srv/www/htdocs/rpw/typo3conf/ext/w4xbackup/)…“

 

Ursache:

Liegt an den Berechtigung des neu erstellen Extension Verzeichnisses „w4x_backup“. Tritt bei der Version 0.9.1 auf bei der Version 0.9.2 sollte es funktionieren.

 

Abhilfe:

Vergeben Sie neue Berechtigungen mit dem FTP Client oder auf der Konsole:

 

SLES11:~ # chmod a+rwx /opt/lampp/htdocs/rpw/typo3conf/ext/w4x_backup

 

 

12.4.4.2       Fehler bei Backup „[function.unlink]: No such file or directory“

Nach Durchführung eines Backups erscheint folgende Meldung am Bildschirm

 

Warning: unlink(/srv/www/htdocs/rpw/typo3temp/w4x/www.Homepage.com-2009-04-18-b3f1e3dbcfc5b76a1966.sql) [function.unlink]: No such file or directory in /srv/www/htdocs/rpw/typo3conf/ext/w4x_backup/mod1/index.php on line 641

 

Ursache:

Wenn PHP im „safe_mode“ verwendet wird, so wird in der „php.ini“ mit der Option „safe_mode_exec_dir” angegeben, wo sich die ausführbaren Dateien für PHP befinden.

In diesem Verzeichnis werden unabhängig von Einstellungen in der Extension „w4x_backup“ die Dateien „mysqldump“ und „mysql“ gesucht.

 

Kontrollieren Sie die Apache Error-Logdatei „/var/log/apache2/error_log“ nach folgenden Eintrag:

 

sh: /usr/local/bin/mysqldump: No such file or directory

 

Dies bedeute das die Dateien „mysqldump“ und „mysql“ im Verzeichnis „/usr/local/bin/“ nicht gefunden werden.

 

Abhilfe:

Sie  könnten symbolische Links in dem Verzeichnis “/usr/local/bin/ für die Programme erstellen, wenn es sich um einen lokalen Server handelt:

 

SLES 11:~ # ln -s /usr/bin/mysqldump /usr/local/bin/mysqldump

SLES 11:~ # ln -s /usr/bin/mysql /usr/local/bin/mysql

SLES 11:~ # ln -s /bin/tar /usr/local/bin/tar

SLES 11:~ # ln -s /bin/bin/mywhoami /usr/local/bin/whoami

 

Wenn der TYPO3 Server bei einen Provider gehostet wird, so muss der Provider dafür sorgen das Sie über PHP Zugriff auf die Dateien haben.

 

 


12.4.4.3       Fehler bei Backup „The operation was not performed“

 

 

Wenn man auf den Text „Operation log“ klick sieht man folgendes

 

 

Ursache:

Das Backup Programm überprüft die Zugriffsberechtigungen auf die Verzeichnisse und Dateien welche gesichert werden sollen mit dem Benutzer „wwwrun“. Wenn Ihr System einen anderen Benutzer für die Zugriffsberechtigungen verwendet, oder Berechtigungen falsch vergeben wurden, wird diese Meldung ausgegeben.

Im der obigen Logdatei betrifft dies die Datei „fileadmin/templates/images/clear.gif“ welche nicht dem Benutzer „wwwrun“ zugeteilt ist.

 

Abhilfe:

Vergeben Sie vor Durchführung eines Backups nochmals die Zugriffsberechtigungen für den Benutzer „wwwrun“ neu:

 

SLES11:~ # chown -R wwwrun:ftp /srv/www/htdocs/rpw

SLES11:~ # chmod -R u+rwx /srv/www/htdocs/rpw

 

Sie können dies nach der Sicherung wieder zurücksetzen.

 

12.4.4.4       Fehler „Fatal error: Cannot user string offset as an array in ….“

 

Fatal error: Cannot use string offset as an array in /xxx/xxx/xxx/xxx/xxx/typo3/sysext/lang/lang.php on line 311

 

Ursache:

Der Fehler tritt nach dem Update auf die TYPO3 4.6 auf.

1)    Diesen Fehler gibt es auch in Zusammenhang mit der Extension „multicolumn“ auf.

2)    Fehler in Zusammenhang mit „w4x_backup“ Extension.

Abhilfe:
zu 1) Für die Extension „multicolumn“ muss in der Datei „/hooks/class.tx_multicolumn_cms_layout.php“

Muss die Zeile 53 auskommentiert werden:

„//$GLOBALS['LOCAL_LANG'][$llKey]['deleteWarning'] = $deleteWarningOrginal . chr(10) . $deleteWarning;“

 

zu 2) Noch keine Ahnung. Ich vermute das die Extension für die TYPO 4.6 schon zu alt ist, der letzte Update fand im Jahr 2008 statt.

 

12.4.5        Manuelle Rücksicherung eines Backups

Die unten angeführten Pfadangaben beziehen sich wieder auf eine „XAMPP“ Installation. Bei Verwendung anderer Pakete sind die Pfade entsprechend Ihrer Installation zu ersetzen.

 

Wechseln Sie auf dem Server in die Befehlszeile oder öffnen Sie ein „Terminal-Programm“ im KDE.

Geben Sie folgendes für die Rücksicherung ein. Bei der Eingabe des Backupnamens brauchen Sie nur den Anfang des Namens einzugeben und können dann die „Tab“ Taste zur automatischen Ergänzung drücken:

 

SLES11:~ # tar xvfz /srv/www/htdocs/rpw/typo3temp/w4x/2006-02-03- a2d8e9e25273f6b1646c.tar.gz


Das „rpw“ im der Pfadangabe ist der Pfad Ihrer TYPO3 Installation.

Nachdem die Rücksicherung der Dateien erfolgt ist, müssen Sie noch die Datenbank mit folgendem Befehl rücksichern. Sie können wieder mit „Tab“ den Namen automatisch Ergänzen lassen. Sie stehen dann mit Cursor nach dem Punkt und brauchen nur mehr „sql“ eingeben:

 

SLES11:~ # /opt/lampp/bin/mysql -p rpw < /srv/www/htcdosc/rpw/typo3temp/w4x/2006-02-03- a2d8e9e25273f6b1646c.sql


Wobei das „rpw“ nach „mysql“ für den Datenbanknamen der MySql Datenbank steht. Das zweite „rpw“ im Pfad ist der Pfad Ihrer TYPO3 Installation.

Damit wäre die Rücksicherung abgeschlossen.

 

12.4.5.1       Fehler „Access denied…“ bei der manuellen Rücksicherung der Datenbank

 

Ursache:

Sie haben den Parameter „-p“ für die Passwortabfrage des „root“ Users der MySQL Datenbank nicht eingegeben oder das eingegebene Passwort ist falsch. Eventuell haben Sie für den MySQL Server ein anderes Passwort als für den „root“ Benutzer des Servers.

 

12.4.5.2       Fehler „Unknow database…“ bei der manuellen Rücksicherung der Datenbank

 

Ursache:

Es ist keine Datenbank mit dem Namen „rpw“ vorhanden. Erstellen Sie zuerst die Datenbank mit dem „phpMyAdmin“ oder mit:

 

SLES11:~ # /usr/bin/mysqladmin –u root –p create rpw



 

12.5    Extension Indexed Search Engine (indexed_search)

12.5.1        Was macht diese Extension?

Diese Extension beinhaltet zwei Hauptelemente:

·         Indizierung – Ein Service welches TYPO3 Seiten, während des Rendering Prozesses, schnell indiziert. Die Indizierung beinhaltet dabei alle Wörter von dieser Seite (oder spezielle Bereiche). Der Index einer Seite wird aber erst beim ersten Zugriff, auf diese Seite, über das Frontend aufgebaut. Sie können auch festlegen ob eine Seite in den Index aufgenommen werden soll.
Zusätzlich können Sie noch externe Dokumente Indizieren lassen, wie z.B. PDFs, Word-Dokumente, HTMLs, etc.

·         Suche – Sie können eine Seite anlegen die das Plugin „Indexed Search“ verwendet. In dieser Seite könne Sie die Suche festlegen. In einer weiteren Seite können Sie die Suchergebnisse anzeigen lassen.

 

12.5.2        Installation

Installation der Extension „Indexed Search Engine“(indexed_search) vom “Ext Manager”. Diese Extension ist schon nach der Grundinstallation vorhanden und kann in der Auswahl “Available extension to install“ durch Anklicken des grauen Plus Symbols  installiert werden. Wurde die Extension korrekt installiert wird das grüne Minus Symbol  angezeigt.

Die Indexed Search Engine von TYPO3 ist eine Extension die es erlaubt für die einzelnen Seiten der Webseite einen Index zur Suche von Inhalten anzulegen. Die Indizierung der Seiten erfolgt dabei nicht automatisch sondern muss im Setup TS der Seite angegeben werden.

 

Template Setup Einstellung:

 

# Indexed Search initalisieren und Sprache festlegen
# ****************************************************
# Die Indizierung für Indexed Search wird unter erst
# unter dem "page" Objekt aktviert, erzeugt weniger hash
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 0
config.sys_language_uid = 0
config.language = de

page = PAGE
page {
  # Indexed Search Indizierung einschalten
  config.index_enable = 1
  config.index_externals = 1


  # CSS Dateien einbinden
  includeCSS {


Hinweis  In dem obigen Beispiel wurde auch gleich die Default Sprache auf Deutsch festgelegt. D.h. die Sprachen-ID für Deutsch wurde auf „0“ für die Standardsprache festgelegt.

 

In den Seiteneigenschaften deaktivieren Sie, für Seiten welche nicht in die Indizierung aufgenommen werden soll, die Option „Include in Search“.

 

12.5.3        Einrichtungen einer CSS-Datei für Indexed Search Engine

/*----------------------------------------------------------------------------------------------*/

/*--------------------------------- Formating indexedsearch  -----------------------------------*/

/*----------------------------------------------------------------------------------------------*/

 

/* Formatieren den Text "Suche nach:" von der Suchzeile */

.tx-indexedsearch TD {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                margin-top: 6px; 

                font-size: 0.8em;

}

/* Formatieren den Button von der Suchzeile */

.tx-indexedsearch .tx-indexedsearch-searchbox INPUT.tx-indexedsearch-searchbox-button {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.7em;

                margin-top: 6px; 

                margin-bottom: 6px;

                width: 80px;

}

/* Formatieren das Eingabefeld der Suchzeile */

.tx-indexedsearch .tx-indexedsearch-searchbox INPUT.tx-indexedsearch-searchbox-sword {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.8em;

                margin-top: 6px;

                margin-bottom: 6px;

                width: 150px;

}

/* Formatieren der Anzeige vom eingegeben Suchwortes */

.tx-indexedsearch .tx-indexedsearch-whatis P.tx-indexedsearch-sw {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0,7em;

                font-weight: bold;

                background: #ffffff;

}

/* Formatieren der Anzeige von "Suche nach ..." */

.tx-indexedsearch .tx-indexedsearch-whatis {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0,7em;

                background: #ffffff;

                margin-top: 6px;

                margin-bottom: 5px;

}

/* Formatierung der Aufzählung der Gruppenergebnisse */

.tx-indexedsearch-sectionlinks {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 1em;

}

/* Formatieren der Aufzählung der Gruppenergebnisse mit LI */

.tx-indexedsearch li {

                margin-left: 15px;              

}

/* Formatieren der Aufzählung Gruppenergebnisse Link Texte */

.tx-indexedsearch .tx-indexedsearch-sectionlinks a {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0,7em;

                text-decoration: none;

}

/* Formatiere Mousover für Aufzählung Gruppenergebnisse Link Texte */

.tx-indexedsearch ul li a:hover {

                text-decoration: none;

                background: #D0D4D6;

}

/* Formatieren der Anzeige von "Seite x" */

.tx-indexedsearch .tx-indexedsearch-browsebox-SCell {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0em; /* Anzeige von Seite wurde ausgeblendet */

                text-decoration: none; /* Anzeige von Seite wurde ausgeblendet */

}

/* Formatierung der Anzeige vom Suchergebnissen */

.tx-indexedsearch .tx-indexedsearch-res P {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.7em;

}

/* Formatieren Gruppenüberschrift */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 1em;

                background: #ffffff;

                margin-top: 16px;

                margin-bottom: 6px;         

}

/* Formatieren Gruppenüberschrift H2 */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead H2 {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 1em;

                background: #ffffff;

                margin-top: 0px;

                margin-bottom: 0px;         

}

/* Formatiere der Gruppenüberschrift Links */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead H2 a {

                text-decoration: none;       

}

/* Formatiere Mousover für Gruppenüberschrift Link */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead H2 a:hover {

                text-decoration: none;

                background: #D0D4D6;

}

/* Formatieren Gruppe in einer Tabelle */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead TABLE {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 1em;

                background: #ffffff;

}

/* Formatieren der Gruppe TD Definition */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead TD {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 1em;

                background: #ffffff;

                vertical-align: middle;

}

/* Formatieren des ersten Zeile vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0,8em;

                font-weight: bold;

                margin-top: 6px;

                margin-bottom: 0px;         

}

/* Formatieren von weiteren Zeile vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title P {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.8em;

                background: #ffffff;

                font-weight: bold;

                margin-top: 6px;

                margin-bottom: 0px;         

}

/* Formatiere nur das Icons vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-icon {

}

/* Formatiere nur die Nummer vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-number {

}

/* Formatiere nur den Titels vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-caption {

}

/* Formatiere nur den Titels vom Suchergebnis Link */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-caption a {

                text-decoration: none;       

}

/* Formatiere Mousover nur fr Titels vom Suchergebnis Link */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-caption a:hover {

                text-decoration: none;

                background: #D0D4D6;

}

/* Formatiere nur die Prozent vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-idexedsearch-percent {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.8em;

                background: #ffffff;

                font-weight: normal;

}

/* Formatieren der Beschreibung vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-descr P {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.7em;

                background: #ffffff;

}

/* Formatieren der gefundenen Suchtexten in der Beschreibung vom Suchergebnis */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-descr .tx-indexedsearch-redMarkup {

                color: red;

}

/* Formatieren der Inexed Search Info unterhalb der Beschreibung */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-info {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.8em;

                background: #ffffff;

}

/* Formatieren Indexed Search Info unterhalb der Beschreibung */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-info a {

                text-decoration: none;

}

/* Formatieren Mousover der Indexed Search Info unterhalb der Beschreibung */

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-info a:hover {

                text-decoration: none;

                background: #D0D4D6;

}

/* Formatieren des Textes wenn nichts gefunden wird */

.tx-indexedsearch P.tx-indexedsearch-noresults {

                font-family: Verdana, Arial, Helvetica, sans-serif;

                font-size: 0.7em;

                background: #ffffff;

                font-weight: bold;

                text-align: left;     

}

 

/* Macina Suchbox */

.tx-macinasearchbox-pi1 {

                width: 190px;

                height: 11px;

}

 

12.5.4        Einfachere Searchbox verwenden

Zur Anzeige einer variablen Such Box, welche über eine Template steuerbar ist wurde die Extension „Searchbox for Indexed Search Engine“ (macina_searchbox) installiert.

 

Einstellung im Template Setup Bereich (erste Version):

 

plugin.tx_macinasearchbox_pi1 {

  pidSearchpage =  17

  templateFile = fileadmin/templates/html/macina_template.tmpl

}

 

Einstellung im Template Setup Bereich (zweite Version):

 

marks.searchbox >
marks.searchbox < plugin.tx_macinasearchbox_pi1
marks.searchbox.pidSearchpage = 17
marks.searchbox.templateFile = fileadmin/templates/html/macina_template.tmpl

 

Passen Sie ggf. den Template Pfad an Ihre Verzeichnisstruktur an.

 

Die Extension muss jetzt nur noch auf Ihrer Webseite anstelle eines Markers eingefügt werden.

 

Im Template Setup Bereich den Aufruf der Searchbox einfügen:

 

...

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

   #   subparts.search_bottom < plugin.tx_indexedsearch

    subparts.search_bottom < plugin.tx_macinasearchbox_pi1

 

12.5.5        Ergebnisse in Indexed Search nach Sprache anzeigen

Normalerweise zeigt Indexed Search nach einer Suche immer alle Ergebnisse die gefunden wurden an. Egal in welcher Sprache dieser Inhalt angelegt worden ist.

 

Wenn Sie eine Mehrsprachige Seite haben, und die Ergebnisse immer nur in der jeweiligen gewählten Sprache angezeigt werden sollen, fügen Sie folgendes zu den Sprachdefinitionen hinzu:

#default language

plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 0

[globalVar = GP:L = 1]

   # Index search english

   plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 1

[global]

[globalVar = GP:L = 2]

   # Index search espanol

   plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 2

[global]

 

12.5.6        Installation für Indizierung von externen Dokumenten

Man kann über die Indexed Search Engine auch externe Dokumente Indizieren lassen, wie z.B. PDFs, Word-Dokumente, HTMLs, etc. Damit dies funktioniert sind noch zusätzliche Programmpakete für das Linux System notwendig.

Hinweis  Die unten angeführte Anleitung wurde so angelegt, dass Sie für lokale TYPO3 Server, sowie auch für TYPO3 Installationen bei einem ISP eingesetzt werden könnte, soweit vorher die Softwarepakete auf einer lokalen Installation erstellt wurden, und dann auf dem ISP Server hochgeladen werden.

 

12.5.6.1       Erstellen eines Verzeichnisses für die Zusatzprogramme

 

Zuerst erstellen wir ein zusätzliches Verzeichnis für die Programme unter dem Root Verzeichnis der TYPO3 Installation.

 

SLES11:~ # mkdir /srv/www/htdocs/typo3_progs

 

In diesem Verzeichnis werden die einzelnen Programme abgelegt.

 

12.5.6.2       Installieren von HTMLDOC


HTMLDOC wird für die Zeichencodierung in Kombination mit dem TYPO3 PDF Generator Plugin verwendet. Wir brauchen das, um ordnungsgemäße Deutsche Sonderzeichen zu erhalten.

Holen Sie sich die neueste Version von http://www.htmldoc.org/software.php.

 

Wir kopieren dann das Programm in unser neu erstelltes „typo3_progs“ Verzeichnis, entpacken es, und führen die Installation aus.

 

SLES11:~ # cp htmldoc-1.8.27-source.tar.gz /srv/www/htdocs/typo3_progs

SLES11:~ # cd /srv/www/htdocs/typo3_progs

SLES11:~ # tar -xvzf htmldoc-1.8.27-source.tar.gz

SLES11:~ # cd htmldoc-1.8.27

SLES11:~ # ./configure --prefix=/srv/www/htdocs/typo3_progs/htmldoc-1.8.27

SLES11:~ # make

SLES11:~ # make install

SLES11:~ # cd ..

SLES11:~ # chown -R wwwrun:ftp htmldoc-1.8.27

SLES11:~ # chmod -R 770 htmldoc-1.8.2

 

Hinweis  Beachten Sie das durch die Option „—prefix“ die Installation in dem neuen Programmverzeichnis „typo3_progs“ durchgeführt wird. Wenn Sie jetzt das TYPO3 PDF-Generator Plugin installieren, müssen Sie als Installationspfad für htmldoc: „/ srv/www/typo3_progs/htmldoc-1.8.27 " angeben.

 

12.5.6.3       Installation von XPDF

 

Damit PDF-Dateien von der Indexed Search Engine indiziert werden, müssen Sie das Paket „Xpdf“, welches die notwendigen Werkzeuge „pdftotext“ und „pdfinfo“ enthält installieren.

 

Laden Sie jetzt das Source Paket für “xpdf” von folgender Website:

http://www.foolabs.com/xpdf/download.html

 

Führen Sie danach folgende Befehle aus:

 

SLES11:~ # cp xpdf-3.03.tar.gz /srv/www/htdocs/typo3_progs

SLES11:~ # cd /srv/www/htdocs/typo3_progs

SLES11:~ # tar -xvzf xpdf-3.03.tar.gz

SLES11:~ # cd xpdf-3.03

SLES11:~ # ./configure --prefix=/srv/www/htdocs/typo3_progs/xpdf-3.03 --enable-a4-paper --with-appdef-dir=/srv/www/htdocs/typo3_progs/xpdf-3.03

SLES11:~ # make

SLES11:~ # make install

SLES11:~ # cd ..

SLES11:~ # chown -R wwwrun:ftp xpdf-3.03

SLES11:~ # chmod -R 770 xpdf-3.03

 

Um zu testen, ob Inhalte von PDF-Dokumente wirklich indiziert werden, sollten Sie erst eine PDF-Datei als Content Element Dateilink Ihrer Typo3 Webseite hinzufügen. Löschen Sie alle alten Indizes dieser Seite. Die Dateien werden indiziert, wenn diese Webseite im Browser (per HTTP) aufgerufen wird. Die Indizierung kann auch durch Extension Site Crawler erfolgen.

 

12.5.6.4       Installation von CATDOC

 

Das Paket „catdoc“ ist das nächste Paket, welches für Indexed Search Engine benötigt wird. Dieses wird verwendet um WORD Dokumente zu indizieren, aber keine *docx Dokumente. Holen Sie sich die Source Dateien von http://site.n.ml.org/info/catdoc/


Führen Sie danach folgende Befehle aus:

 

SLES11:~ # cp catdoc-0.94.tar.gz /srv/www/htdocs/typo3_progs

SLES11:~ # cd /srv/www/htdocs/typo3_progs

SLES11:~ # tar -xvzf catdoc-0.94.tar.gz

SLES11:~ # cd catdoc-0.94

SLES11:~ # ./configure --prefix=/srv/www/htdocs/typo3_progs/catdoc-0.94 --disable-wordview --disable-langinfo --with-input-charset=8859-15 --with-output-charset=8859-15

 

WICHTIG Damit „catdoc“ mit deutschen Sonderzeichen arbeiten kann, üssen Sie die „config.h“ Datei im Verzeichnis '/src/' mit vi-Editor ändern.

Ändern Sie die Werte für SOURCE_CHARSET und TARGET_CHARSET. Ersetzen Sie sie durch: '8859-15 '.

/* Character encoding used by default for 8-bit source files */

#define SOURCE_CHARSET "8859-15"

 

/* Output character encoding used by default, if impossible to determine encoding from locale */

#define TARGET_CHARSET "8859-15"

 

Führen Sie jetzt die Kompilierung und Installation aus:

 

SLES11:~ # make

SLES11:~ # make install

SLES11:~ # cd ..

SLES11:~ # chown -R wwwrun:ftp catdoc-0.94

SLES11:~ # chmod -R 770 catdoc-0.94

 

12.5.6.5       Pfade für externe Programme in Indexed Search festlegen

 

1.    Gehe Sie TYPO3 Backend auf „Extension Manager“ und klicken Sie dann auf die Extension „Indexed Search“. Ändern Sie den Standardpfad für „Path to PDF parsers“ und „Path to WORD parser“ von „/usr/local/bin/“ auf ihr vorher angelegtes Verzeichnis um „/srv/www/htdocs/typo3_progs/“.



2.    Testen Sie dann ob die Pfade vom PHP über „open_basedir“ aufglöst werden.

Testen ob die Programme über „open_basdir“ gefunden werden:

 

<?php

error_reporting(E_ALL & ~E_NOTICE);

ini_set('display_errors', 1);

 

echo '<p>open_basedir: ' . ini_get('open_basedir') . '</p>';

 

if (is_file('/usr/bin/pdfinfo')) {;

        echo '<p>pdfinfo found</p>';

} else {

        echo '<p>pdfinfo not found</p>';

}

?>

 

3.    Erstellen Sie eine Datei mit einem beliebigen Namen und der Endung „php“ im Root Verzeichnis der TYPO3 Installation. Kopieren Sie dann den oben angeführten Code in diese Datei und führen Sie die Datei aus. Sollten Sie keine Fehlermeldung erhalten kann der „open_basedir“ Pfad die zusätzlichen Programme korrekt finden.

 

12.5.6.6       Konfiguration von Index Search für den „Crawler“

 

1.    Gehe Sie jetzt im TYPO3 Backend auf „Extension Manager“ und klicken Sie dann auf die Extension „Indexed Search“. Aktvieren Sie unter „Use ‚crawler‘ extension to index ex..“ damit die Extension für Indexed Search verwendet wird.



2.    Zusätzlich deaktivieren Sie den „Crawler“ im Frontend. Damit wird der „Crawler“ nur mehr im Backend ausgeführt.



3.    Erstellen Sie im Backend einen neuen Benutzer mit dem Namen „_cli_crawler“ und einem beliebigen Kennwort. Dem Benutzer brauchen Sie keine „Admin“-Rechte oder sonstige Berechtigungen im Backend zu vergeben. Es reicht das alleinige Vorhandensein dieses Benutzers im Backend.

4.    Achten Sie darauf das im Root Template der TYPO3 Site der Parameter „no_cache=1“ nicht gesetzt ist. Der Crawler funktioniert nur wenn die Webseiten gecached werden.

5.    Im Root Template Setup Bereich wird dann noch folgender TypoScript eingetragen:

config.index_enable = 1

config.index_externals = 1

 

 

12.5.6.7       Installation und Einrichtung vom „Crawler“ (crawler) Extension

 

Hinweis  Der „Crawler“ wird hier integriert für das Backend eingrichtet und läuft nicht als eigener „Cron“-Job. Damit kann diese Art von „Crawler“ auch bei einer Installation von TYPO3 bei einem ISP verwendet werden.

 

1.    Download der Extension „crawler“ durchführen.

2.    Installieren Sie die Extension „crawler“ mit den Standardwerten bis auf den Eintrag für „Frontend website base path“. Passen Sie diesen Pfad Ihrer Installation an.



3.    Gehen Sie danach auf die Homepage Seite im TYPO3 Verzeichnisbaum und legen Sie ein neues Objekt „Crawler Configuration“ an.



4.    Geben Sie als Namen „Re-indexing Homepage“ ein und klicken Sie auf „Re-indexing [tx_indexedsearch_reindex]“. Speichern Sie das Objekt danach ab.



5.    Danach wird im Feld „Configuration“ die Sprachdefinition und im Feld „Base url“ der Host und die Domänen der Website eingegeben. Alle andere Felder belassen Sie wie Sie sind.



6.    Speichern Sie Sie die Definitonen ab.

 

12.5.6.8       Testen der „Indexed Search“ Extension mit einer Webseite

 

1.    Gehen Sie im BE auf „Web“ – „Info“

2.    Wählen Sie eine Seite aus dem Verzeichnisbaum aus, in welcher Sie die Indizierung testen wollen.

3.    Wählen dann aus den Dropdown Menüs „Indexsuche“ und „Overview“ aus. Sie sehen, dass noch keine Inhalte der Webseite indiziert wurden („No indexed“).



4.    Wechseln Sie jetzt im Dropdown Menü auf „Site Crawler“ und „Start Crawling“. Klicken Sie dann nacheinander zuerst auf den Text  unter „Configuration“ dann auf „Update“.



5.    Klicken Sie jetzt im selben Fenster auf „Crawl URLs“ und dann auf „Continue and show log“.



6.    Danach sollten Sie folgende Anzeige sehen in welcher Sie dann wieder auf das Symbol für „Aktualisieren“ klicken. Dadurch wird dieser Index manuell upgedatet.



In der „Run-time“ Spalte erscheint dann das aktuelle Datum und die Uhrzeit. In der „Status“-Spalte sollte jetzt "OK" stehen.

7.    Wechseln Sie wieder zu "Indexed Search" in der oberen Dropdown-Menü und Spaß zu sehen, der Inhalt Ihrer Seite indiziert:

 

 

 

12.5.6.9       Testen der „Crawler“ Extension mit Dateien

 

Nun führen Sie die obigen Schritte erneut mit einer Seite mit Links zu Dokumenten aus, die Sie irgendwo infileadmin“ Verzeichnis abgelegt haben. Halten Sie sich an die bekannten Dokumenttypen von Indexed Search wie z.B. doc, xls, ppt, pdf, .
Nach der Bearbeitung Ihrer Seite sollten Sie Ihre Warteschlange mit beliebig vielen Einträgen gefüllt sein, so viele wie Sie Links zu Dokumenten haben:

 

 

• Prozess der Warteschlange mit den kleinen Button "Aktualisieren".

Wechseln Sie wieder zu "Indexed Search" in der oberen Dropdown-Menü und genießen Sie sehen die Seite Inhalte und Dokumente indiziert:

 

 

Sie können jetzt versuchen Ihre ganze Website mit der gleichen Methode zu indizieren. Der einzige Unterschied ist, dass Sie von der Wurzel (in der Regel auf der Homepage) starten, und dann wählen Sie im Verzeichnisbaum rekursiv (Option "Tiefe" inWeb“ –„Info“ – „Site Crawler“ – „Start Crawling“).

 

Als Ergebnis sollten nacher alle bekannten Dokumente indiziert sein.

 

12.5.7        Fehler in Indexed Search

 

12.5.7.1       Fehler im Admin Panel werden Module unter „/usr/local/bin/“ nicht gefunden

 

Im Admin Panel wird angezeigt, dass die Programme für die Indizierung von externen Dokumenten nicht gefunden wurden. Diese sind „pdftotext“, „pdfinfo“, „catdoc“, „ppthtml“ und „xlhtml“.

 

 

Ursache:

Es fehlen für das Indizieren von Dokumenten noch zusätzliche Module wie z.B. das „pdftotext“ und „pdfinfo“ für PDF Dokumenten, oder „catdoc“ für HTML, etc.

 

Abhilfe:

Installieren Sie der Reihenfolge nach „htmldoc“, „xpdf“ und „catdoc“. Siehe dazu Kapitel „12.5.6 Installation für Indizierung von externen Dokumenten“.

 

 

12.5.7.2       Fehler „./configure“ vom Paket „xpdf“ mit „WARNING: Couldn‘t find freetype“

 

configure: WARNING: Couldn't find X

configure: WARNING: Couldn't find Motif

configure: WARNING: Couldn't find FreeType

configure: WARNING: -- You will be able to compile pdftops, pdftotext,

        pdfinfo, pdffonts, pdfdetach, and pdfimages, but not xpdf

        or pdftoppm

 

Ursache:

Es gibt ein paar Probleme beim Kompilieren von Xpdf mit FreeType-2. Die Symptome sind seltsame Kompilierungsfehler, die im Zusammenhang mit FreeType auftreten ("FT_Error nicht deklariert", gehören Syntaxfehler in FreeType-Dateien, etc.)

 

Bei FreeType 2 sind zwei verschiedene Verzeichnisse auf dem Include-Pfad. Zum Beispiel, wenn Sie in /usr/local FT2 installiert haben, müssen Sie "-I/usr/local/include" (für <ft2build.h>) und "-I/usr/local/include/freetype2" (für <freetype/*.h>). Die Xpdf configure-Skript bietet keine Möglichkeit der Einstellung zwei verschiedene Include-Verzeichnisse für FT2.

 

Es wird noch schlimmer ... Wenn Sie auch FreeType 1 installiert haben z.B. in „/usr/local/“, dann muss das Verzeichnis „/usr/local/include/freetype2“ vor dem Verzeichnis „/usr/local/include“ gesucht werden (weil ansonsten die installierte FT1 im Verzeichnis „/usr/local/include/freetype/*.h“ viele Dateinamen gemeinsam mit FT2 hat – und diese werden dann anstelle der FT2-Dateien geladen werden).

 

Abhilfe:

Definieren Sie folgende Variablen vor der Ausführung vom „configure“.

 

SLES11:~ # export CFLAGS="-I/usr/include/freetype2 -I/usr/include"
SLES11:~ # export CXXFLAGS="-I/usr/include/freetype2 -I/usr/include"
SLES11:~ # ./configure
SLES11:~ # make

 

12.5.7.3       Fehler im BE nach Definition von „open_basedir“ kommt leere Website

 

 

Ursache:

Nach Eintragung vom „open_basedir“ in die virtuelle Host Konfiguration vom Apache ist dieser aufgetreten. Im Apache Error Log steht dazu folgendes:

[Sat Oct 29 17:39:26 2011] [error] [client 10.0.0.144] PHP Fatal error:  Unknown: Failed opening required '/srv/www/htdocs/rpw/typo3/index.php' (include_path='.:/usr/share/php5:/usr/share/php5/PEAR') in Unknown on line 0

[Sat Oct 29 17:39:27 2011] [error] [client 10.0.0.144] PHP Warning:  Unknown: open_basedir restriction in effect. File(/srv/www/htdocs/rpw/typo3/index.php) is not within the allowed path(s): (/srv/www/htdocs/rpw:/usr/bin:/srv/www/htdocs/typo3_progs:/usr/local/bin) in Unknown on line 0

 

Abhilfe:

Sie müssen beim „open_basedir“ auch den Pfad der Website für „typo3“ inkludieren. Ansonsten kann die „index.php“ nicht geöffnet werden.

 

12.5.7.4       Fehler „Indexed Search“ bei aktiven Inhalten keine Ergebnisse an

 

Von aktiven Inhalten der Extension „tt_news“ oder auch „tt_products“ erscheinen keine Ergebnisse nach einer Suche.

 

Abhilfe:

In älteren Versionen von TYPO3 gab es Probleme mit der Indexed Search Engine im Zusammenhang mit Seiten welche aktiven Inhalte enthalten. Dies sind z.B. „tt_news“ oder „tt_products“ Extension.
Damit die Indizierung trotzdem über solche Seite läuft, muss aus dem Template Setup der Eintrag für das News-Modul und für das Shop Modul entfernt werden. Dann den Index neu bilden indem man die Seiten besucht werden. Danach die beiden Extensions Template Setup wieder aktivieren.

 

12.5.7.5       Fehler „Indexed Search“ zeigt in der Ergebnisseite „/span“ in Text an

 

Dieser Fehler ist bei älteren TYPO3 Versionen aufgetreten, welche noch die „Csh_de“ verwendet haben.

 

 

Abhilfe:

Dies passiert bei der Übersetzung auf den deutschen Text durch die Extension „csh_de“.

Gehen Sie in das Verzeichnis „typo3conf/ext/csh_de/indexed_search/pi/“. Machen Sie eine Sicherung von der Datei „de.locallang.xml. Öffnen Sie die Datei „de.locallang.xml“. Suchen Sie den Text „pi_list_broserresults_displays“. Entfernen Sie aus dem Text nachfolgenden Text die beide „/span“. Speichern Sie die Datei wieder ab.

 

 

12.6     Einrichtung eines Print Link (Druckerversion)

Auf der Website soll ein sogenannter „Print Link“ zur Druckvorschau oder zum Druck der Seite angezeigt werden. Dabei wird nur das Inhaltsfenster der angezeigten Seite übernommen, der Banner, die Fußzeile sowie die Navigation, wird bei der Druckvorschau oder beim Druck weggelassen.

 

12.6.1        Print Link mit „type=98“

 

1.    Da unter  TYPO3 4.4.x die statischen Templates unter „Include Static“ nicht mehr automatisch installiert werden, muss der für „type=98“ ein Script in das Root-Template eingebunden werden.
Unter „Template“ wählen Sie das Root-Template aus. Klicken Sie jetzt auf den Text „Setup“ und fügen Sie das unten angeführte Script hinzu.

print = PAGE
print {
  typeNum = 98
  config.index_enable = 0

  10 = CONTENT
  10.table = tt_content
  10.select.OrderBy = sorting
  10.select.colPos = 0
  10.select.languageField = sys_language_uid
}

 

2.    Wenn Sie mit einem eigenen HTML Template für Print Links arbeiten wollen, kopieren Sie aus dem Verzeichnis „typo3/sysext/cms/tslib/media/scripts/printversion_content.tmpl“ die Datei „printversion_content.tmpl“ in das Verzeichnis „fileadmin/templates“.

3.    Ändern Sie die HTML Template Datei ggf. entsprechend Ihren Bedürfnissen ab.

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>

<head>

                <title>Print version example template</title>

</head>

<body>

<br />

<br />

<br />

<h1>PRINTER FRIENDLY TEMPLATE</h1>

<br /><br /><br /><br /><hr /><br /><br /><br />

<em>

This template is the framework for printer friendly display of content. This file is the default file used by the static_template 'plugin.alt.print'.<br />

<br />

You can insert a few markers:<br />

<br />

###PAGE_TITLE### - the page title<br />

###PAGE_SUBTITLE### - the page subtitle<br />

###PAGE_AUTHOR### - the page author (with email address link)<br />

###CONTENT### - the 'normal' content of the page <br />

and<br />

###PAGE_UID### - the page uid number (eg. for use with a 'back' link)<br />

</em>

<br />

<br />

<br />

<br />

<!-- ###DOCUMENT_BODY### begin

  The content between these subpart markers goes right into the body section of the webpage when displayed:

-->

<hr />

###CONTENT###

<hr />

<!-- ###DOCUMENT_BODY### end -->

</body>

</html>

 

4.    Erstellen Sie Sie für Formatierungen eine eigene CSS Datei im Verzeichnis „fileadmin/templates/css/“ mit Namen „printversion_content.css“. Eine eigene CSS Datei ist nicht unbedingt notwendig, es kann aber bei manchen Seiten mit Bildern notwendig sein um das Aussehen der Druckseite an die originale Seite anzupassen.

Beispiel CSS Datei für den Print Link:

 

body {

    color: black;

    background-color: rgb(255,255,255);

    font-size: 100.01%;

    font-family: Helvetica,Arial,sans-serif;

    margin: 0;

    text-align: center;  /* Zentrierung im Internet Explorer */

}

 

div#Page {

    text-align: left;    /* Seiteninhalt wieder links ausrichten */

    width: 800px;

    padding: 0.5em;

    background-color: rgb(255, 255, 255);

}

 

div#ContentLayer {

    margin-left: 0px;

    padding: 0 1em;

    border: 1px dashed silver;

}

 

div#ContentLayer h1 {

    font-size: 1.5em;

    margin: 0 0 1em;

}

 

div#ContentLayer h2 {

    font-size: 1.2em;

    margin: 0 0 1em;

}

 

div#ContentLayer p {

    font-size:1em;

    margin: 1em 0;

}

 

5.    Um das HTML Template und das Stylesheet für den Print Link zu übergeben fügen Sie noch folgenden Code im Setup Bereich zu der „druck=PAGE“ Definition hinzu:

druck = PAGE
druck {

  includeCSS.file = fileadmin/templates/css/printversion_content.css

  templateFile = fileadmin/templates/html/printversion_content.tmpl

  …

}

 

 

6.    Im Setup Bereich geben Sie folgenden Code ein:

 

# Button für die Funktion Druckversion mi Mehrsprachigkeit

temp.printsite = COA

temp.printsite {

  # holt die Domain

  10 = TEXT

  10.data = getenv:HTTP_HOST

  # holt die Seiten ID

  20 = TEXT

  20.field = uid

  # holt aktuellen Sprachcode

  30 = TEXT

  30.data = GP:L

  # setzt die Texte zusammen

  10.wrap = <a href="http://|

  20.wrap = ?id=|&type=98

  30.wrap = &L=|" target="_blank"><img src="fileadmin/templates/images/icons/document-print.png" alt="Drucken" border=0></a>&nbsp;&nbsp;

}

# Zusammenfassung aller Buttons in einen Objekt

temp.function = COA

temp.function {

   1 < temp.gotop

   2 < temp.printsite

}

...

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

   …

   # Setze in den Marker ###function### die Funktions Button

   subparts.function < temp.function

   …

 

Für die Mehrsprachigkeit wurde der Parameter „L“ schon eingebaut den „alt=“ Text wird aber mit diesen Script immer in der gleiche Sprache angezeigt.

 

9.    Setzen Sie die Berechtigung auf das Template Verzeichnis (wenn nicht schon geschehen) und auf die Template Datei wie folgt:
SLES 11 :# chmod 770 /srv/www/htdocs/cms/fileadmin/templates
SLES 11 :# chmod –r 660 /srv/www/htdocs/cms/fileadmin/templates/html/
SLES 11 :# chmod –r 660 /srv/www/htdocs/cms/fileadmin/templates/css/

 

12.6.2        Print Link mit eigenen Parameter „print=1“

 

Dieses Beispiel verwendet nur ein CSS Stylesheet für die Printausgabe. Es wird kein Plugin oder HTML Template benötigt.

 

1.    Erstellen Sie folgendes Script im Setup Bereich des Root-Templates einfügen:

PRINT = TEXT

PRINT.typolink {

  value = drucken

  parameter.data = page:uid

  additionalParams = &print=1

  target = _new

}

 

2.    Fügen Sie jetzt eine zusätzliche CSS Datei für die Printversion ein:

 

page.includeCSS {

  file1.media = screen

  …

  file2 = fileadmin/templates/css/print.css

  file2 {

    title = Druckversion

    media = print

}

 

3.    Und jetzt wird noch Bedingung für den Aufruf eingebaut:

 

# Standard CSS Datei - wird ggf. überschrieben

page.includeCSS.file1 = fileadmin/templates/css/style.css

[globalVar = GP:print=1]

# Wenn &print=1 an die Adresse angehängt wird, wird daPrint.css

page.includeCSS.file1 = fileadmin/templates/css/print.css

[global]

 

4.    Jetzt können Sie noch den Printlink auf Ihrer Website wie im vorhergehen Kapitel bei „type=98“ einbauen. Nur wird anstatt „type=98“ der Text „print=1“ verwendet.

 

 

12.6.3        Einrichtung für Mehrsprachigkeit

Anpassung vom Template damit die „Alt“ Texte im Link mehrsprachig dargestellt werden.

 

1.    Änderungen im Constants Bereich. Es werden in der Sprachweiche die entprechden Texte für den „alt“-Text des Links als Template Variablen angelegt.

 


[globalVar = GP:L = 0]
   gotopbtn = go Top

   printbtn = Drucken  
[global]

# English language, sys_language.uid = 1
[globalVar = GP:L = 1]



  
gotopbtn = go Top
   printbtn = Print  
[global]

# Espanol language, , sys_language.uid = 2
[globalVar = GP:L = 2]
  
gotopbtn = go Top
   printbtn = Imprimir  
[global]

 

2.    Änderungen im Setup Bereich.

 

# Button für Druckversion

temp.print = TEXT

temp.print {

   field = uid

   wrap = <a href=”index.php?id=|&type=98“ target=“_blank“><img src="fileadmin/templates/images/icons/print.png" alt="{$printbtn}" border=0></a>&nbsp;            

}

 

 

12.6.3.1       Fehler mit plugin.alt.print wird „The page is not configured! [type= 98][]“

 

 

Ursache:

In TYPO3 Template wird noch ein noch ein altes statisches Template „plugin.alt.print (98)“  durch den Parameter „type=98“ angesprochen. Bei den neuen TYPO3 Versionen (ab 4.4) sind keine statischen Template („Include Static:“) mehr vorhanden daher gibt es das statische Template „plugin.alt.print (98)“ und den Parameter „type=98“ nicht mehr.

 

Abhilfe:

Bei den neuen TYPO3 Versionen sind keine statischen Template mehr vorhanden. Der Parameter „type=98“ muss im TYPO3 Template selbst definiert werden. Sie können aber den Printlink aber auch auf einen eignen Parameter z.B. „print=1“ umstellen.

Zur Umsetzung verfolgen Sie die vorherigen Kapitle zur Erstellung eines Printlinks.

 

 

12.6.3.2       Fehler bei „type=98“ Printlink wird ###CONTENT### anstatt der Seite angezeigt.

 

 

Ursache :

Sie haben bei der Printlink Definition für den „type=98“ keine Inhalt angegeben oder die Übergabe des Inhaltes ist fehlerhaft

 

Abhilfe :

Fügen Sie folgende Zeilen im Setup Bereich des Root-Templates zur „print = PAGE“ Definition hinzu.

 

print = PAGE
print {

  
  
  10 = CONTENT
  10.table = tt_content
  10.select.OrderBy = sorting
  10.select.colPos = 0
  10.select.languageField = sys_language_uid
}

 

12.6.3.3       Fehler bei Verwendung von „type=98“ Printlink kommt eine leere Seite

 

Ursache :

Sie haben wahrscheinlich das HTML-Template für den Printlink nicht erstellt oder der Pfad auf das HTML-Template ist falsch.

 

Abhilfe :

Die Datei für das Template befindet sich im Verzeichnis „typo3/sysext/cms/tslib/media/scripts/printversion_content.tmpl“ kopieren Sie von dort die Datei „printlink_content.tmpl“ in das Verzeichnis „fileadmin/templates“.

Verweisen Sie im „Constants“ Bereich des Root-Template aus dieser Datei:

# Konfigurationseinstellungen für plugin.alt.print

plugin.alt.print.file.template = fileadmin/templates/html/printversion_content.tmpl

 

Kontrollieren Sie auch die Berechtigungen auf die HTML-Template Datei normalerweise reichen „rw“ für Den Benutzer und die Gruppe aus. Außerdem benötigt auch das Verzeichnis Template benötigt „rwx“ für den Benutzer und die Gruppe.

 

Wenn Sie den Pfad kontrollieren wollen so setzen Sie Berechtigung auf die Datei für alle auf Benutzer auf „r“ mit:

„chmod o+r /srv/www/htdocs/cms/fileadmin/templates/html/printversion_content.tmpl“.

 

Kontrollieren Sie die Pfadeingabe auf Fehler indem sie das Template direkt über den URL aufrufen: http://www.company.com/ fileadmin/templates/html/printversion_content.tmpl

 

12.6.3.4       Fehler bei Verwendung von plugin.alt.print unter tt_news mit RealURL

 

Bei Aufruf der Druckversion erscheint folgender Fehler: „no new_id given“.

 

Abhilfe:

Bei Verwendung von RealURL geben Sie folgendes in Ihr Root-Template ein:

 

# Button für Druckversion

temp.print = COA

temp.print {

     # holt die Domain

  1 = TEXT

  1.data = getenv:HTTP_HOST

    # holt den kompletten Pfad

  2= TEXT

  2.data = getenv:REQUEST_URI

  2.wrap = |?

  # setzt die Texte zusammen

  1.wrap = <a href="http://|

  2.wrap = |?type=98" target="_blank"><img src="fileadmin/templates/images/icons/print.png" alt="Drucken" border=0></a>&nbsp;&nbsp;

}

# Zusammefassung aller Buttons in einen Objekt

temp.function = COA

temp.function {

   1 < temp.gotop

   2 < temp.printsite

}

# Zuweisung der Objekt zum mainTemplate der Seite

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   …

   # Setze in den Marker ###function### die Funktions Button

   subparts.function < temp.function

  …

}

…           

 

Hinweis  Dieser Printlink funktionierte bei mir aber nicht mehr für Mehrsprachige Websites. Wahrscheinlich weil die Auflösung des URL auf den RealURL Namen danach nicht mehr auf den „L“ Parameter reagiert. Ich musste den Link zur Lösung des Problems wieder auf „…index.php?id=..&L=..“ umstellen.

 

12.7    Einrichtung von Captcha (captcha)

12.7.1        Was macht diese Extension?

Diese Extension generiert Bilder welche einen verschleiernden Text enthalten welchen der Benutzer dann in ein Formularfeld eingeben muss um Zugang zu den Webservice zu erhalten. Bei dieser Technik wird davon ausgegangen, dass Menschen diesen Text lesen und eingeben können während ein Spam-Bot (Roboter Skripte um Spam zu erzeugen) dies nicht können. Dies verhindert bei Tip-A-Friend, Gästebüchern und anderen Formularen das Anlegen von Spam von nicht menschlichen Benutzern.

Diese Technik wird diskutiert unter: http://en.wikipedia.org/wiki/Captcha

Diese „Captcha“ Extension wird als Dienst von anderen TYPO3 Extension verwendet. Durch die Verwendung von Captcha wird die Sicherheit der Website erhöht.

 

12.7.2        Installation von Captcha

1.    Installieren Sie die „captcha“ Extension aus dem Online Repository.

2.    Konfigurieren Sie die Captcha Extension:

When set the captcha will get generated using TTF font rendering functions which will result in much more readable captchas

Use TTF[useTTF] þ

 

The width of the captcha image

Image width[imgWidth] = 95

 

The height of the captcha image

Image height[imgHeight] = 25

 

The number of characters of which the captcha consists

Captcha chars[captchaChars] = 5

 

No digits (0-9) will get used for the captcha string

No numbers[noNumbers] = ¨

 

When set the text of the captcha will be somewhat bold

Bold text[bold] = ¨

 

No lowercase characters (a-z) will get used for the captcha string

No lowercase characters[noLower] = ¨

 

No uppercase characters (a-z) will get used for the captcha string

No uppercase characters[noUpper] = ¨

 

The number of pixels between the start of each character (or their distance when in TTF mode, should be 4-6 in TTF mode)

Letter spacing[letterSpacing] = 16

 

The angle in degree which each letter is rotate maximally clock-, or counterclock-wise

Angle[angle] = 20

 

The number of pixels which each letter is maximally shifted to the left or right

X Difference[diffx] = 0

 

The number of pixels which each letter is maximally shifted up or down

Y Difference[diffy] = 2

 

The numer of pixels which the first character is away from the top left corner in horizontal direction

X Offset[xpos] = 3

 

The numer of pixels which the first character is away from the top left corner in vertical direction

Y Offset[ypos] = 4

 

How many 'obfuscating' ellipses are drawn onto the background of the image

Noises[noises] = 6

 

The background color for the captcha

Background color[backcolor] = #f4f4f4

 

The text color for the captcha

Text color[textcolor] = #000000

 

The color of the obfuscating ellipses

Obfuscation color[obfusccolor] = #c0c0c0

 

The font size in pixels (Just for TTF mode)

Font size[fontSize] = 16

 

The font file to use in TTF mode (relative to the root of the TYPO3 installation)

Font file[fontFile] =

 

All characters listed here will not get used for the captcha

Exclude chars[excludeChars] = gijloGIJLO0169

 

3.    Klicken Sie auf „Update“ um Ihre Änderungen zu übernehmen

4.    Installieren Sie jetzt die „captcha“ Extension.

5.    Setzen Sie die Berechtigungen auf das Extension Verzeichnis „captcha“ auf:
SLES 11 :# chmod –R 770 /srv/www/htdocs/cms/typo3conf/ext/captcha


12.7.2.1       Fehler Captcha Bild oder Grafik wird nicht angezeigt (zeigt x)

 

 

Ursache:

Wenn Captcha mit http://www.company.com/typo3conf/ext/captcha/captcha/captcha.php direkt aufgerufen wird kommt folgende Ausgabe:

 

 

Die Grafik "http://www.realpowerwork.com/typo3conf/ext/captcha/captcha/captcha.php" kann nicht angezeigt werden, weil sie Fehler enthält.

 

oder

 

Notice: Use of undefined constant PATH_this - assumed 'PATH_this' in /srv/www/htdocs/rpw/typo3conf/ext/captcha/captcha/captcha.php on line 39


Notice: Use of undefined constant PATH_site - assumed 'PATH_site' in /srv/www/htdocs/rpw/typo3conf/ext/captcha/captcha/captcha.php on line 40


Warning: Cannot modify header information - headers already sent by (output started at /srv/www/htdocs/rpw/typo3conf/temp_CACHED_psb3c5_ext_localconf.php:645) in /srv/www/htdocs/rpw/typo3conf/ext/captcha/captcha/captcha.php on line 194
‰PNG IHDR_


`“¶^PLTEôôôÀÀÀôôôìì쯯¯kkk¶¶¶ÜÜÜjjj‚‚‚ÇÇÇIII'''¦¦¦ªªª---AAAÃÃÃŠŠŠaaaÄÄÄ———LLL–––äää```RRR ___®®®íííóóó222ÛÛÛØØØUUUËËËñññ³³³


;;;111999ééé eeeòòòššš}}}æææÂÂÂÍÍÍááánnn>>>¹¹¹ÑÑÑ£££ÊÊÊëëë000gggÓÓÓççç¾¾¾‡‡‡PPP‑‑‑[[[´´´ÒÒÒQQQ›››åååµµµ555»»»ÆÆÆyyyCCCããã’’’%%%ÌÌÌðððÝÝÝHHH¸¸¸×××­­­ïï˜hhhŸŸŸÔÔÔ½½½†††NNN+++   ÞÞÞˆˆˆÙÙÙîîî¡¡¡BBB!!!OOOàààpppzzz


\\\"""***œœœŒŒŒ¤¤¤)))EEE444^^^###{{{‘‘‘WWW‰‰‰ÕÕÕJJJGGGmmm


ÉÉÉ
&&&ÁÁÁ $$$ÅÅÅqqq±±±êêê...ÎÎÎYYYwwwMMMbbb@@@]]]²²² ¼¼¼“““iiiKKKèèè•••ZZZuuuÈÈÈ«««€€€VVVßßßdddooo333ÖÖÖººº777ÚÚÚ‹‹‹sss¨¨¨ttt)!lS±IDATH‰c`ÀLèS DVqR>;¨a>ª-äO(U‘aS|lBbR2,æ;»º}zz;û8 Ò!ŒmkÊ×ÂYòÑc3 zÂñ˜/*&.!)%-
uoJjŒvš9"9öO`Ÿ¨3i²Nì0·ŒqÝú 7ÙAeMÖTä…®œä‰f(R\ÊÊñÉ+(*)ƒ9*é–)ÈI}ªAh¶xÛ´æéà NNkŽ@6'I{ö†E›- ­Lp™¯¢ÊȨ& 
 
äÌ,‡lä¬6cæ,ÎÙŒ `îæ-¦[‘Íñ<.­ÈÀ Á'tWðhhjiëèÂlcÍÉõËË/@HÏQs÷bÐË8bgʶíјf
\eƒÃx=}
C
&#c¸Ÿ¬ ‹ŠýKJaòæéóIxÚ´20—³_S¬»!t‡+
ã0€‰¨©™¹…¥„õ…^ABH`!_‘9T.{ÊÎ]»åw¢–-þÖ6¶ vö
ŽÈ
8 <‡ù`)'gì2xœˆU5.˜êñ™Šß&ìRÈjH5ݬâ0{(1­a.›)r>Ü,ûEš7»åIEND®B`

 

Die obige Ausgabe ist nicht vollständig. Alternativ könnte die Ausgabe auch in einen IFrame erfolgen. Dazu die „typo3conf/ext/captcha/captcha/captcha.php“ ändern:

 

//$captchaHTMLoutput = t3lib_extMgm::isLoaded('captcha') ? '<img src="'.t3lib_extMgm::siteRelPath('captcha').'captcha/captcha.php" alt="" />' : '';

$captchaHTMLoutput =  '<iframe width="500" height="100" src="'.t3lib_extMgm::siteRelPath('captcha').'captcha/captcha.php" alt="" ></iframe>';

 

Die Extension Captcha in der Version 1.1.1 ist nicht voll kompatibel mit PHP 5 daher wird hier eine Liste von Warnungen ausgegeben. Dies erfolgt aber nur wenn in Ihrer „/etc/php5/apache2/php.ini“ die Option „display_error = On“ eingestellt ist.

 

Abhilfe:

Stellen Sie in der Datei „/etc/php5/apache2/php.ini“ die Option „display_error = Off“ ein und starten Sie den Apache Server mit „rcapache2 restart“ neu.

Als Alternative können Sie auch in der Datei „captcha.php“ das Error Reporting ausschalten:

 

/**

 * [CLASS/FUNCTION INDEX of SCRIPT]

 */

 

ini_set('error_reporting','0');

 

session_start();

 

 


12.8     Einrichtung von freecap CAPTCHA (sr_freecap)

Ist eine Alternative zu der Extension „Captcha“, mit Ähnlichen Funktionen. Je nach Extension in welchen die Captcha-Funktion verwendet wird, kann entweder die „captcha“, oder die „sr_freecap“, oder auch beide unterstützt werden. Ich erwähne die Extension nur der Vollständigkeit halber, denn ich würde die Verwendung der „captcha“ Extension empfehlen.

 

12.8.1        Installation von sr_freecap

 

Bei mir machte die Installation der neuesten Version (1.2.2) von „sr_freecap“ auf einem Provider Server Probleme. Es kam dabei immer zu einem Memory

Siehe dazu auch „Memory Limit über Datei „.htaccess“ erweitern“ weiter unten.

 

Fatal error: Allowed memory size of 32505856 bytes exhausted (tried to allocate 11290130 bytes) in /home/.sites/36/site228/web/typo3/mod/tools/em/class.em_terconnection.php on line 160

 

Hinweis  Ich habe dann eine ältere Version der Extension z.B. 0.4.6 zu verwenden. Doch das Ergebnis war eher bescheiden. Die Buchstaben im erzeugten Captcha waren nicht zu lesen oder rutschen aus dem Grafikbereich hinaus. Ich stieg dann wider auf die „captcha“ Extension um.

 

12.8.1.1       Installation der Extension für das „ve_guestbook“

 

1.    Extension wurde Down geladen und Lokal installiert.

2.    Im der Template Datei für das „ve_guestbook“ (ve_guestbook.tmpl) wird das Captcha dann folgenderweise eingebaut (leider noch Tabellenformatiert):

 

                               <td valign="top">###FORM_ENTRY### <span class="tx-guestbook-form-obligationfield">###FORM_ENTRY_OBLIGATION###</span></td>

                               <td><textarea name="tx_veguestbook_pi1[entry]" class="tx-guestbook-form-textarea" rows="8" cols="25">###VALUE_ENTRY###</textarea></td>

                </tr>

 

<!-- ###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

  <tr>

    <div class="tx-guestbook-field">

                               <td><label for="capture">###FORM_CAPTCHA_RESPONSE### <span class="tx-guestbook-form-obligationfield">*</span><br />###CAPTCHA_IMAGE###</label></td>

                               <td><input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" value="" id="capture" /></td>

    </div>

  </tr> 

 <!-- ###CAPTCHA_INSERT### -->

               

<!-- ###SR_FREECAP_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

  <tr>

                  <div class="tx-guestbook-field">

                               <td><label for="freecap">###SR_FREECAP_NOTICE### <span class="tx-guestbook-form-obligationfield">*</span><br /><span class="freecap-span">###SR_FREECAP_CANT_READ###</span></label></td>

                                <td>###SR_FREECAP_IMAGE###&nbsp;<input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" title="###SR_FREECAP_NOTICE###" value="" id="freecap" /></td>                             

    </div>

                </tr>

<!-- ###SR_FREECAP_INSERT### -->

 

                <tr>

                               <td>&nbsp;</td>

                               <td><input type="hidden" name="id" value="###PID###" /><input type="hidden" name="tx_veguestbook_pi1[submitted]" value="1" /><input type="submit" value="###FORM_SUBMIT###" /></td>

                </tr>

 

3.    Legen Sie eine neue Seite zur Anlage neuer Gästebucheinträge z.B. mit den Namen „Formular“ an.

4.    Erstellen Sie ein neues Inhaltselement. Als Plugin für das neue Inhaltselement wird „Gästebuch“ ausgewählt.

5.    Damit das Formular die Extension „sr_freecap“ auch benutzt muss man auf der Formularseite „FORM“ im Reiter „Plugin“ die entsprechende Captcha Extension auswählen.

 

6.    Mit folgenden Einträgen im Setup Bereich könnte die Größe und das Aussehen der Captcha beeinflusst werden:

########## Captcha (sr_freecap) #############

plugin.tx_srfreecap_pi1 {

         morphFactor = 0.1 #lt. Manual sind Werte über über 1 unleserlich

}

# Sektion um den angezeigten Text zu formatieren

plugin.tx_srfreecap_pi2 {

                salutation = {$plugin.tx_srfreecap.salutation}

 

                _CSS_DEFAULT_STYLE (

                               .tx-srfreecap-pi2-image { margin-left: 1em; }

                               .tx-srfreecap-pi2-cant-read { font-size: .9em; color:#3500aa; }

                               .tx-srfreecap-pi2-cant-read a:link { background-color:transparent; font-weight:bold; text-decoration:none;color:#ff0000; }

                )

}

 

Nachdem auch noch „imageHeight=30“ einbauen wollte, rutschten alle erzeugten Wörtern beim Captcha aus den Grafikfenster hinaus.

Mit dem Eintrag „useWordsList = 0“ sollte, die Anzeige besser werden nur werden dann keine Worte sondern wilde Buchstabenkombinationen angezeigt.

 

 


12.8.1.1.1        Memory Limit über Datei „.htaccess“ erweitern

 

Folgender Eintrag wurde in die Datei „.htaccess“ vorgenommen:

php_value memory_limit 64M

 

Bei mir führte der Versuch das Memory Limit über die Datei „.htaccess“ zu erweitern zur folgenden Fehlermeldung und die Seite konnte im FE und im BE nicht mehr aufgerufen werden:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.


Apache Server at www.mc-ratten.at Port 80

 

 

Abhilfe:

Einzige Möglichkeit war den Eintrag aus der „.htaccess“ Datei wieder zu entfernen.


12.9     Extension Tip-A-Friend (tipafriend)

Mit dieser Extension können Gäste der Website die angezeigte Seite per Email weiterempfehlen. Das Email wird dabei vom Server versendet und es dazu auf dem Gast PC kein Email Programm notwendig.

 

12.9.1        Installation

1.    Extension Tip-A-Friend (tipafriend) installieren.

2.    Kopieren Sie aus dem Verzeichnis „/typo3conf/ext/tipafriend/pi/“ die Template Datei „tipafriend_de.tmpl“ in das Verzeichnis „/fileadmin/templates/html“. Ändern Sie die HTML Template Datei nach Ihren Bedürfnissen ab. Je nach Sprache sollten Sie die Endung vor dem Punkt auf den Ländercode ändern und die enthaltenen Texte entsprechend anpassen.

 

3.    Je nach Konfiguration und Struktur Ihrer Templates ist die Einstellung für Tip-A-Friend im jeweiligen Bereich des Root oder Subtemplates einzutragen.

4.    Einstellungen für Tip-A-Friend im Template Constant Bereich:

 

# Konfigurationseinstellungen für plugin.tipafriend

  # Default HTML Template festlegen

plugin.tipafriend.file.templateFile = fileadmin/templates/html/tipafriend_de.tmpl

  # ID der Seite wo das Plugin "Tip geben" eingebunden wurde

plugin.tipafriend.PIDtipForm = 40

  # Maximale Breite des Formularesfestlegen

plugin.tipafriend.MaxW = 200

  # Farbeinstellungen des Formulars

plugin.tipafriend.color1 = #FFFFFF

plugin.tipafriend.color2 = #FFFFFF

plugin.tipafriend.color3 = #CCCCCC

  # HTML eMail Versand aktivieren

plugin.tipafriend.htmlMail = 1

 

Sie sollten das Template nicht Im Menü „Template“ – „Constant Editor“ unter „PLUGIN.TIPAFRIEND (8)“ eingeben. Da dadurch das Template in den Ressourcen Bereich des Templates kopiert wird. Dies würde zwar genauso Funktionieren, aber Sie müssen bei jeder Änderung am Template, das vorhandene Template im Ressourcen Bereich löschen und das neue wieder hinzufügen. Der Übersicht halber wird auch die „PID for the Tip-form page“ (plugin.tipafriend.PIDtipForm) die die ID der vorher erstellten Seite darstellt nicht im Constant Editor sondern im Constant Bereich eingegeben.

 

4.    Die weitere Anleitung geht davon aus, dass in Ihrem HTML Template ein Marker mit der Bezeichnung „tip“ vorhanden ist. Ansonsten müssen Sie den folgenden Code entsprechend Ihren Bedürfnissen abändern.
Binden Sie den Aufruf des Plug-Ins in Ihr Root-Template mit folgenden Code ein:

# Button für die Funktion Tip-A-Friend

temp.tipafriend = COA

temp.tipafriend {

  wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a>&nbsp;

  # holt die Domain

  10 = TEXT

  10.data = getenv:HTTP_HOST

  # holt den kompletten Pfad

  20 = TEXT

  20.data = getenv:REQUEST_URI

  20.rawUrlEncode = 1

  30 = TEXT

  30.data = GP:L 

  # setzt die Texte zusammen

  10.wrap = &tipUrl=http://|

  20.wrap = |

  30.wrap = &L=|

}

# Zusammefassung aller Buttons in einen Objekt

temp.function = COA

temp.function {

   1 < temp.gotop

   2 < temp.printsite

   3 < temp.tipafriend

}

# Zuweisung der Objekt zum mainTemplate der Seite

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

  

   # Setze in den Marker ###function### die Funktions Button

   subparts.function < temp.function

   …

}

 

Eine weitere Möglichkeit der Definition von Tip-A-Friend im Setup Bereich. Damit könnte die Extension direkt einen „subparts“ zugwiesen werden:

 

# TIP A FRIEND

temp.tipafriend = USER

temp.tipafriend {

  userFunc = tx_tipafriend->main_tipafriend

  code = TIPLINK

  templateFile = {$plugin.tipafriend.file.templateFile}

  typolink.target = _self

  typolink.parameter = 62

}

#displaying the tip-link

subparts.tip= TEXT

subparts.tip< temp.tipafriend


Die Punkte „…“ in der Übergabe in das Template sind Platzhalter für schon vorhandenen Code. Den „typolink.parameter“ müssen Sie entsprechend Ihrer ID ändern.

5.    Fügen Sie im Template unter „Click here to edit the whole template“ bei „Include static:“ das Objekt „plugin.tipafriend” hinzu.

6.    Erstellen Sie eine neue Seite (Standard). Erstellen Sie mit „Seiteninhalt anlegen“ (englisch „Create Page Content“ den Inhalt als „General Plugin“. Wählen Sie unter Plugin „Tipp geben“ aus. Geben Sie als CODE:  „TIPFORM“ ein.

7.    Die Funktionalität von Tip-A-Friend sollten Sie jetzt schon testen können.

8.    Sie können jetzt noch durch Formatierungen des HTML Template und der zugehörigen CSS Datei Designanpassungen der Tip-A-Friend Extension vornehmen.

 

12.9.2        Mehrsprachigkeit in Tip-A-Friend einbauen

Bei der Erzeugung des „COA“ Objektes für den Link von Tip-A-Friend wurde schon die Mehrsprachigkeit berücksichtigt. Sie müssen aber jetzt noch sicherstellen, dass immer das jeweilige HTML-Template nach der Sprache ausgewählt wird:

 

#config.sys_language_mode = content_fallback; 1,0

[globalVar = GP:L = 0]

config {

  …

}

  # Templates auf Sprache Deutsch wechseln

plugin.tipafriend.templateFile = fileadmin/templates/html/tipafriend_de.tmpl

[global]

 

# English language, sys_language.uid = 1

[globalVar = GP:L = 1]

config {

  …

}

    # Templates auf Sprache Englisch wechseln

plugin.tipafriend.templateFile = fileadmin/templates/html/tipafriend_en.tmpl

[global]

 

# Espanol language

[globalVar = GP:L = 4]

config {

   …

}

  # Templates auf Sprache Spanisch wechseln

plugin.tipafriend.templateFile = fileadmin/templates/html/tipafriend_es.tmpl

[global]

 

12.9.3        Liste der Fehler von der Tip-A-Friend Extension

 

12.9.3.1       Fehler bei Verwendung Tip-A-Friend kommt „Oops, an error occured!“

 

Es erscheint die Fehlermeldung „The page is not configured! [type= 0][]“

 

 

Ursache:

Dieser Fehler hatte nicht direkt mit der Extension „tipafriend“ zu tun. Wurde aber ausgelöst als eine zusätzliche Sprachweiche für den Wechsel des HTML-Templates je nach Sprache eingebaut wurde.

 

 

Abhilfe:

Erstellen Sie den Wechsel der HTML-Templates für die verschieden Sprachen in den schon vorhandenen Sprachdefinitionen.

 

12.9.3.2       Fehler bei Verwendung Tip-A-Friend mit RealURL

Bei Aufruf von Tip-A-Friend wird bei Seiten, welche die Extension „tt_news“ oder „tt_products“, verwenden nicht der korrekte URL zum übergeben. Es darf hier nicht mehr nur die ID der Seite im Link übergeben werden, sondern es muss der komplette URL (RealURL) inklusive der GET Parameter gesetzt werden.

 

Abhilfe:

Bei Verwendung von RealURL geben Sie folgendes in Ihr Root-Template ein:

 

# Button für die Funktion Tip-A-Friend

temp.tipafriend = COA

temp.tipafriend {

  wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a>&nbsp;

  # holt die Domain

  10 = TEXT

  1.data = getenv:HTTP_HOST

  # holt den kompletten Pfad

  20 = TEXT

  20.data = getenv:REQUEST_URI

  20.rawUrlEncode = 1

  30 = TEXT

  30.data = GP:L 

  # setzt die Texte zusammen

  10.wrap = &tipUrl=http://|

  20.wrap = |

  30.wrap = &L=|

}

 

oder den Button so erstellen:

 

# Button für die Funktion Tip-A-Friend

temp.tipafriend = COA

temp.tipafriend {

  wrap = <a href="index.php?id=40|" class="tip"><img src="fileadmin/templates/images/icons/button_send.gif" alt="als Email senden" border=0></a>

  # holt den kompletten URL inkl. http://

  10 = TEXT

  10.data = getIndpEnv: TYPO3_REQUEST_URL

  20 = TEXT

  20.data = GP:L 

  # Url Encode wird benötigt damit die komplette Parameterliste übergeben wird.

  10.rawUrlEncode = 1

  10.wrap = &tipUrl=|

  20.wrap = &L=|

}

 

 

 

12.9.3.3       Fehler bei Tip-A-Friend mit Firefox/Netscape wird bei langen URL die Form verbreitert

 

 

Abhilfe:

Verwenden Sie im HTML Template anstatt des Markers „###URL_SPECIALCHARS###“ den Marker „###URL_DISPLAY###“. Bei diesem Marker werden URL die Länger als 70 Zeichen sind auf die ersten und letzten 30 Zeichen gekürzt.

 

12.9.3.4       Fehler beim Versand als HTML Email: Bei manchen Bildern nur Rahmen

Manche Bilder werden beim Versand als HTML Email nur mit dem Rahmen angezeigt.

 

Ursache:

Noch nicht ermittelt

 

12.9.3.5       Fehler in Tip-A-Friend bei Versand an Chello (österreichischer Provider)

 

Feb  8 09:32:15 www3 postfix/pickup[12297]: 7CBC46B8147: uid=65534 from=<nobody>

Feb  8 09:32:15 www3 postfix/cleanup[12519]: 7CBC46B8147: message-id=<20060208083214.7CBC46B8147@www3.company.com>

Feb  8 09:32:15 www3 postfix/qmgr[16975]: 7CBC46B8147: from=<nobody@www3.company.com>, size=499, nrcpt=1 (queue active)

Feb  8 09:32:15 www3 postfix/smtp[12520]: 7CBC46B8147: to=<test@chello.at>, relay=smtpgate.chello.at[213.46.255.2], delay=1, status=bounced (host smtpgate.chello.at[213.46.255.2] said: 553 www3.company.com does not exist (in reply to MAIL FROM command))

Feb  8 09:32:15 www3 postfix/cleanup[12519]: DA4C36B8124: message-id=<20060208083215.DA4C36B8124@www3.Homepage.com>

Feb  8 09:32:15 www3 postfix/qmgr[16975]: DA4C36B8124: from=<>, size=2315, nrcpt=1 (queue active)

Feb  8 09:32:15 www3 postfix/qmgr[16975]: 7CBC46B8147: removed

Feb  8 09:32:15 www3 postfix/local[12522]: DA4C36B8124: to=<root@www3.company.com>, orig_to=<nobody@www3.company.com>, relay=local, delay=0, status=sent (delivered to mailbox)

Feb  8 09:32:15 www3 postfix/qmgr[16975]: DA4C36B8124: removed

 

Ursache:

Ich vermute, dass dies durch den nicht registrierten DNS Namen meines Servers zustande kommt. Sehr viele Firmen verwenden schon Spam-Filter die nur E-Mails von registrierten SMTP Servern zulassen.

 

12.10            Umsetzung dynamischer auf statische URL

Damit können die normalerweise dynamisch generierten URL in TYPO3 durch statische URL ersetzt werden. Die dynamisch generierten URL haben den Nachteil, dass Sie von den meisten Suchmaschinen nicht erfasst werden.

Wir werden hier im nachfolgenden zuerst das „mod_rewrite“ Modul alleine (Rewrite URL) und danach mit der Extension „realurl“ (Real URL) verwenden.

 

Einige Beispiele von Umsetzungen auf statische URL:

 

TYPO3 URL: http://www.company.com/index.php?id=12

Rewrite URL: http://www.company.com/cms/Produkte.12.0.html

Real URL: http://www.company.com/cms/produkte/produktinfos/

 

TYPO3 URL: http://www.company.com/index.php?id=12

Rewrite URL: http://www.company.com/cms/Produktansicht.38.0.html?&backPID=12&tt_products=6

Real URL: http://www.company.com/cms/produkte/produktinfos/produktansicht/?&backPID=12&tt_products=6

 

Grundsätzlich wird über “mod_rewrite” die Seite nicht wirklich als statische Seite angelegt. Sondern es wird nur intern der angezeigte oder eingegeben URL im Browser über das Module „mod_rewrite“ auf den TYPO3 URL umgeschrieben.

 

Verwechseln Sie daher „mod_rewrite“ für die Umschreibung von URL nicht mit dem Anlegen von physikalischen statischen Seiten in Ihren TYPO3 Verzeichnis. Sie können nämlich in Verbindung mit „mod_rewrite“ und dem Admin Panel über den Menüpunkt „veröffentlichen“ statische Seiten in Ihrem TYPO3 Verzeichnis erzeugen. Dies wird hier nur zum besseren Verständnis erklärt, für die Umsetzung dynamischer auf statische URL werden keine statischen Seiten benötigt.

Für die Anlage von statischen Seiten, folgende Einträge in Ihre „/typo3conf/localconf.php“ vornehmen:

$TYPO3_CONF_VARS[„FE“][„simulateStaticDocuments“] = „1“;

$TYPO3_CONF_VARS[„FE“][„publish_dir“] = „./publish/“;

 

Der angegeben Verzeichnisname für die statischen Dokumente „publish“ muss manuell in Ihren TYPO3 Verzeichnis angelegt werden.

 

Zusätzlich wird im Root-Template „mod_rewrite und das AdminPanel aktiviert:

 

config.simulateStaticDocuments = 1   // aktiviert mod_rewrite

config.simulateStaticDocuments_NoTypeIfNoTitle = 1   //  keine Type Angabe wenn kein Titel vorhanden

config.simulateStaticDocuments_addTitle = 20  // Länge vom Titel auf 20 Zeichen begrenzen

config.admPanel = 1  // Admin Panel für Frontende aktivieren

 

Wenn Sie jetzt im Backend eingeloggt sind und das Frontende öffnen wird das Admin Panel mit dem Menüpunkt „Veröffentlichen“ angezeigt. Durch die Auswahl der „Veröffentlichungsebenen“ und klicken auf „Jetzt veröffentlichen“ können Sie aus allen angezeigten Seiten statische Seiten erzeugen. Die statischen Seiten werden im Verzeichnis „publish“ angelegt.

 

12.10.1    Einrichtung von statischen URL mit „mod_rewrite“

Wenn Sie diese Funktionalität testen wollen darf die Extension „Real URL“ nicht installiert sein.

 

1.    Apache Server konfigurieren
Kontrollieren Sie ob „mod_rewrite“ am Apache Server geladen ist mit:
http://localhost/xampp/phpinfo.php

Hinweis  Wenn Ihre TYPO3 Site von einem Provider gehostet wird, müssen Sie eventuell erst das Freischalten der „mod_rewrite“ Funktion für Ihren Hostspace beim Provider  beantragen.

2.    Kopieren Sie die „.htaccess“ Datei aus dem Verzeichnis „/typo3conf/ext/realurl/“ in das Root Verzeichnis Ihrer TYPO3 Installation.

3.    Bearbeiten Sie die Datei, damit sie nachher wie folgt aussieht:

RewriteEngine On

RewriteRule ^typo3$ - [L]

RewriteRule ^typo3/.*$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule .* index.php

 

4.    Root-Template for Real URL modifizieren

# configure mod_rewrite

config.simulateStaticDocuments = 1

config.simulateStaticDocuments_noTypeIfNoTitle = 1

config.simulateStaticDocuments _addTitle = 20

 

Wenn Sie jetzt die TYPO3 Seite für Produkte öffnen wird z.B. folgendes angezeigt:
http://www.company.com/cms/Produkte.12.0.html oder bei einer Produkteinzelansicht

http://www.company.com/cms/Produktansicht.38.0.html?&backPID=12&tt_products=6

Die angezeigte Nummer nach „products“ ist von der TYPO3 Seiten ID abhängig.

 

12.10.2    Liste möglicher Fehler „mod_rewrite“

 

12.10.2.1    Fehler beim Laden der Website nach Repository Update

 

 

Nach Update vom Repository kann die Website nicht mehr angezeigt werden und es erscheint immer ein Serverfehler. Es kann das Backend und auch das „Install Tool“ nicht mehr geöffnet werden.

 

Ursache:

In der Apache Error-Log-Datei wird folgendes Eingetragen beim Zugriff auf die Website

 

 

Es besteht ein Fehler in der Apache „RewriteEngine“ oder im Module „mod_rewrite“.

 

Abhilfe:

Installieren Sie die das PHP Module „mod_rewrite“ nochmals neu.


12.10.2.2    Fehlermeldung „Not Found“ bei Aufruf von Seiten über „mod_rewrite“

 

 

Abhilfe:

Fehler in der „.htaccess“ Datei in eine „RewriteRule“. Kontrollieren Sie nochmals alle „RewriteRules“ die Sie eingetragen haben. Verwenden Sie für Testzwecke nur eine mit folgenden Inhalt „RewriteRule ^[^/]*/.html$ index.php“.

 

Schalten Sie das Log von „mod_rewrite“ mit folgenden Zeilen im „http.conf“ ein:

 

RewriteLog /var/log/apache/rewrite.log

RewriteLogLevel 9

 

Wenn das Verzeichnis “apache” im Verzeichnis “/var/log” nicht vorhanden ist legen Sie es an mit “mkdir /var/log/apache”.

Starten  nachdem Sie die Zeilen eingetragen haben den Apache Server neu.

Nach Neustarten des Servers sollte die „rewrite.log“ Datei erstellt worden sein.

 

12.10.2.3    Fehlermeldung „Internal Server Error“ bei Aufruf von Seiten über „mod_rewrite“

 

 

 

 

Abhilfe:

Kontrollieren Sie Ihre Einstellungen in der „.htaccess“ Datei. Eventuell haben Sie eine falsche Pfadangabe bei „RewriteBase“.

 

 

12.10.2.4    Fehlermeldung TYPO3 „Error“ bei Aufruf von Seiten über „mod_rewrite“

 

 

Abhilfe:

Eventuell haben Sie zuvor die Extension „Real URL“ installiert. Deinstallieren Sie die Extension „Real URL“ wieder.

12.11            Extension Real URL (realurl)

12.11.1    Was macht diese Extension?

Diese Extension unterstützt die automatische Umsetzung von URLs mit GET Parametern im Frontend (gleich “index.php?id=123&type=0&L=1“) in einen virtuellen Pfad, den sogenannten „Speaking URL“ (gleich „de/kontakt/firmeninfo/page.html“) und wieder zurück. Die dabei erzeugten URL sollen so leicht wie möglich lesbar sein.

Die Extension ist sehr flexible und unterstützt eine einfache Umsetzung von Seiten IDs bis zu komplexen Umsetzung einer Kombination von GET Parametern

 

12.11.1.1    Exempels

EingabeURL

TYPO3 ID und Type

http://www.domain.com/

id=0, type=0

http://www.domain.com/products/product1/features/

id=123, type=0

http://www.domain.com/products/product1/features/leftframe.html

id=123, type=2

 

12.11.1.2    Background

TYPO3 arbeitet mit Seiten IDs. Das funktioniert hervorragend wenn auch die URL sehr hässlich sind  ("...index.php?id=123&type=0&L=1...." etc.). Es gibt Workarounds (simulateStaticDocuments), aber dies ist nur eine bedingte Lösung den die ID muss weiterhin im unterstütztem URL vorhanden sein, was nicht gewünscht ist. Zusätzlich wird nur der Seitentitel angezeigt und nicht der komplette Pfad (oder die sog. 'rootline') zu der Seite.

 

Normalerweise geben Sie den Pfad und den Dateinamen von dem Dokument ein, aber TYPO3 arbeitet ausschließlich mit dem IDs. Die RealURL Extension erlaubt eine Umsetzung von Seiten-IDs und (virtuellen URLs) welche leicht zu lesen und leicht zu merken sind.

 

Die Extension braucht für diese Funktion das Apache Modul „mod_rewrite“ um die virtuellen URLs von der Seite in der TYPO3 Frontend Engine umzuschreiben

 

Normalerweise arbeitet RealURL auch ohne aufwendige Konfiguration, aber Sie haben das Problem das alle Referenzen auf Dateien in der HTML Seite absolute URL sein müssen, oder der <base> Tag muss gesetzt werden. Beide Methoden haben Vorteile und Nachteile, die Erkenntnis daraus ist, dass Sie in Ihren Template und Script Code Anpassungen vornehmen müssen um kompatible zu bleiben.

 

12.11.1.3    Funktionen

·         Unterstützt verschiedene Methoden für Codieren des Seitenpfades, inklusive Benutzerdefinierter Methoden

·         Seitentitel können Leerschritte oder Zeichen wie /.,&@ etc enthalten der URL wird trotzdem in eine sehr einfach lesbare Zeichenfolgen und auf Kleinbuchstaben umgewandelt

·         Falls Sie eine Seite umbenennen, kann der alte URL weiterhin benutzt werden (siehe Users Manual). Damit kann diese Seite wenn Sie z.B. von Google indiziert wurde noch immer gefunden werden.

·         Bietet eine erweiterte Umsetzung von den meisten gängigen GET Parametern in einen oder von einen virtuell URL.

·         Übersetzung zwischen einen GET Abfragestring ("...&tx_myext[blabla]=123&type=2...") und einen virtuellen URL (".../123/2/") ist transparent in TYPO3 und in allen Extension; Die einzige Anforderung ist das die interne TYPO3 Link Erzeugungsfunktion verwendet wird ("tslib_cObj::typolink", "t3lib_tstemplate::linkData").

·         URLs können gecached werden, dadurch wird die Umrechnung von URLs auf IDs sehr schnell.

·         Es können verschiedene Frames oder auch Seitentypen unterstützt werden.

·         Die URLs sind Mehrsprachenfähig (Multilingual). Wenn Sie auf einer mehrsprachigen Seite in Deutsch Browsen werden auch die URLs in Deutsch angezeigt

·         Ein einmal konfiguriertes System arbeitet vollständig automatisch. Erzeugt dabei neue URL macht Update von schon vorhandenen URLs.

·         Sie können sehr einfach sehen wohin “Shortcuts” zeigen wenn der Ziel URL erzeugt wird, anstatt auf dem URL zu der „Shortcut“ selbst.

·         Es werden automatisch mehrere Domains in der Datenbank unterstützt.

·         Es werden auch andere Verzeichnisse von TYPO3 Installationen unterstützt als nur das Root Verzeichnis der Webseite.

·         Encoding und Decoding von wichtigen Parameter und GET Variablen Namen.

 

In der aktuellen Version von RealURL haben Sie die Möglichkeit, zwischen einer automatischen Konfiguration und einer manuellen Konfiguration zu wählen. Bei der automatischen Konfiguration erzeugt die Extension RealURL eine Datei „realurl_autoconf.php“ im Verzeichnis „typo3conf“. Bei der manuelle Konfiguration wird der Definitionscode welcher früher in der „localconf.php“ eingetragen wurde, in die Datei „realurl_conf.php“ eingetragen!

 

12.11.2    Installation vom PHP Modul „mod_rewrite für RealURL

Als Voraussetzung damit Sie RealURL verwenden können, muss auf dem Webserver (Apache) das PHP Modul „mod_rewrite“ installiert sein.

 

1.    Zuerst müssen wird den Apache Server konfigurieren über YaST als zusätzliches Modul das „apache2-worker“ installieren.



2.    Kontrollieren Sie ob „mod_rewrite“ am Apache Server geladen wird. Öffnen Sie ein Konsolen Fenster und geben Sie „vi /etc/sysconfig/apache2“ ein.
Kontrollieren Sie die Option „APACHE_MODULES“ und geben Sie ggf. wenn dies nicht vorhanden den Text „rewrite“ ein. Speichern Sie die Datei ab.

APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 rewrite"

 

Hinweis  Wenn Ihre TYPO3 Site von einem Provider gehostet wird, müssen Sie eventuell erst das Freischalten der „mod_rewrite“ Funktion für Ihren Hostspace beantragen.

3.    Öffnen Sie jetzt die Konfiguration von Ihren virtuellen Apache Host „/etc/apache2/vhost.d/rpw.conf“ und ändern Sie folgende Zeile ab:

 

<Directory "/srv/www/htdocs/rpw">

#

 # AllowOverride controls what directives may be placed in .htaccess files.

 # It can be "All", "None", or any combination of the keywords:

 #   Options FileInfo AuthConfig Limit

 #

 AllowOverride All

    </Directory>

</VirtualHost>

 

Hinweis  Ändern Sie den Text „rpw“ so ab, das er dem Pfad Ihrer TYPO3 Installation entspricht.

 

4.    Starten Sie den Apache Server mit „rcapache2 restart“.

5.    Kopieren Sie die „_.htaccess“ Datei aus dem Verzeichnis „/typo3conf/ext/realurl/“ in das Root Verzeichnis Ihrer TYPO3 Installation. Bennen Sie die Datei auf „.htaccess“ um.

Folgende Einträge sollten in der Datei vorhanden sein:

RewriteEngine On

RewriteRule ^typo3$ - [L]

RewriteRule ^typo3/.*$ - [L]

 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule .* index.php

 

Wenn Sie einen Hoster (Provider) für  Ihre TYPO3 Installation verwenden, kann es auch notwendig sein, zusätzlich einen Eintrag „RewriteBase /ihrverzeichnis/“ oder anstatt der „RewriteRule .* index.php“ den Eintrag „RewriteRule „^[^/]*.html$ index.php“ zu verwenden.

12.11.3    Installation RealURL mit “Enable automatic configuration”

 

1.    Extension „realurl“ im Extension Manager installieren.

2.    Wählen Sie folgende Einstellungen für die Extension aus.



Hinweis  Wenn Sie die Option „Enable automatic configuration“ auswählen brauchen Sie sich keine „realurl_conf.php“ im „typo3conf“ Verzeichnis anlegen, sondern TYPO3 erzeugt automatisch eine Datei mit dem Namen „realurl_autoconf.php“ in diesem Verzeichnis. Der Nachteil dabei ist nur, dass die Sprachumschaltung immer noch über „L=“ Suffix durchgeführt wird.

3.    Root-Template for Real URL modifizieren

# configure real url extension

config.simulateStaticDocuments = 0

config.baseURL = http://www.realpowerwork.com/

config.tx_realurl_enable = 1

 

WICHTIG Die Option "simulateStaticDocuments" muss abgeschaltet sein (=0). Den Host und Domänennamen ersetzne Sie durh Ihre Domäne. Achten Sie auf den abschließenden Schrägstrich „/“ beim URL.

 

Hinweis  Für manche Extensions  sind noch zusätzliche Anpassungen für die richtige Funktion von „RealURL“ erforderlich. Sehen Sie dazu genauers in den Beschreibungen zu den jeweiligen Extensions.

 

4.    Die Einrichtung von “Real URL” ist damit abgeschlossen. Sie können jetzt die TYPO3 Seiten mit Ihren Namen aufrufen. Die Sprachumschaltung erfolgt noch mit „L=“.

 

12.11.4    Einrichtung von RealURL ohne „Enable automatic configuration“

Durch die Verwendung einer eigenen Konfigurationsdatei für RealURL können Sie die Funktionaltät der URL-Umsetzung feiner Steuern, oder gewisse Funktionaltäten überhaupt erst verwenden. Einse dieser Funktionaltäten wäre die Sprachumsetzung vom Suffix „L=“ auf ein Sprachkürzel wie „/de“, „/en/“, „es“, etc.

 

1.    Erstellen Sie einen neue Datei mit dem Namen „realurl_conf.php“ im Verzeichnis „typo3conf“ mit folgenden Inhalt:

<?php

$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment';

$TYPO3_CONF_VARS['EXTCONF']['realurl'] = array(

                '_DEFAULT' => array(

                               'init' => array(

                                               'enableCHashCache' => 1,

                                               'appendMissingSlash' => 'ifNotFile',

                                               'enableUrlDecodeCache' => 1,

                                               'enableUrlEncodeCache' => 1,

                                               'postVarSet_failureMode' => '',

                               ),

                               'redirects' => array(),

                               'preVars' => array(

                                               array(

                                                               'GETvar' => 'no_cache',

                                                                              'valueMap' => array(

                                                                                              'nc' => 1,

                                                                              ),

                                                                              'noMatch' => 'bypass',

                                                               ),

                                                               array(

                                                                              'GETvar' => 'L',

                                                                              'valueMap' => array(

                                                                                              'de' => '0',

                                                                                              'en' => '1',

                                                                                              'es' => '4',

                                                                              ),

                                                                              'valueDefault' => 'de',

                                                                              'noMatch' => 'bypass',

                                                               ),

                                               ),

                                               'pagePath' => array(

                                                               'type' => 'user',

                                                               'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',

                                                               'spaceCharacter' => '-',

                                                               'languageGetVar' => 'L',

                                                               'expireDays' => 1,

                                                               'rootpage_id' => 1,

                                                               'firstHitPathCache' => 1,

                                                               'autoUpdatePathCache' => '1',

                                               ),

                                               'fixedPostVars' => array(),

                                               'postVarSets' => array(

                                                               '_DEFAULT' => array(

                                                                              // news archive parameters

                                                                              'archive' => array(

                                                                                              array(

                                                                                                              'GETvar' => 'tx_ttnews[year]' ,

                                                                                              ),

                                                                                              array(

                                                                                                              'GETvar' => 'tx_ttnews[month]' ,

                                                                                                              'valueMap' => array(

                                                                                                              'january' => '01',

                                                                                                              'february' => '02',

                                                                                                              'march' => '03',

                                                                                                              'april' => '04',

                                                                                                              'may' => '05',

                                                                                                              'june' => '06',

                                                                                                              'july' => '07',

                                                                                                              'august' => '08',

                                                                                                              'september' => '09',

                                                                                                              'october' => '10',

                                                                                                              'november' => '11',

                                                                                                              'december' => '12',

                                                                                              )

                                                                              ),

                                                               ),

                                                               // news pagebrowser

                                                               'browse' => array(

                                                                              array(

                                                                                              'GETvar' => 'tx_ttnews[pointer]',

                                                                              ),

                                                               ),

                                                               // news categories

                                                               'select_category' => array (

                                                                              array(

                                                                                              'GETvar' => 'tx_ttnews[cat]',

                                                                              ),

                                                               ),

                                                               // news articles anMd searchwords

                                                               'article' => array(

                                                                              array(

                                                                                              'GETvar' => 'tx_ttnews[tt_news]',

                                                                                              'lookUpTable' => array(

                                                                                                              'table' => 'tt_news',

                                                                                                              'id_field' => 'uid',

                                                                                                              'alias_field' => 'title',

                                                                                                              'addWhereClause' => ' AND NOT deleted',

                                                                                                              'useUniqueCache' => 1,

                                                                                                              'useUniqueCache_conf' => array(

                                                                                                                             'strtolower' => 1,

                                                                                                                             'spaceCharacter' => '-',

                                                                                                              ),

                                                                                              ),

                                                                              ),

                                                                              array(

                                                                                              'GETvar' => 'tx_ttnews[backPid]',

                                                                              ),

                                                                              array(

                                                                                              'GETvar' => 'tx_ttnews[swords]',

                                                                              ),

                                                               ),

                                               ),

                               ),

                               // configure filenames for different pagetypes

                               'fileName' => array(

                                               'defaultToHTMLsuffixOnPrev' => 1,

                                               'index' => array(

                                                               'print.html' => array(

                                                                              'keyValues' => array(

                                                                                              'type' => 98,

                                                                              ),

                                                               ),

                                                               'rss.xml' => array(

                                                                              'keyValues' => array(

                                                                                              'type' => 100,

                                                                              ),

                                                               ),

                                                               'rss091.xml' => array(

                                                                              'keyValues' => array(

                                                                                              'type' => 101,

                                                                              ),

                                                               ),

                                                               'rdf.xml' => array(

                                                                              'keyValues' => array(

                                                                                              'type' => 102,

                                                                              ),

                                                               ),

                                                               'atom.xml' => array(

                                                                              'keyValues' => array(

                                                                                              'type' => 103,

                                                                              ),

                                                               ),

                                               ),

                               ),

                ),

);

?>

 

Der Eintrag 'defaultToHTMLsuffixOnPrev' => 1 simuliert eine statische HTML-Seite am Ende des URLs, ansonsten werden nur Pfade im URL erzeugt.

 

WICHTIG Ändern Sie auf alle Fälle die ID des Parameter “rootpage_id” auf die ID Ihrer Root-Seite. Führen Sie zusätzlich noch die Anpassung der “getVar” für “L” durch, damit die Sprachindexe zu Ihrer Installation passen.

2.    Im „Extension Manager“ unter „RealURL“ müssen Sie jetzt noch folgende Einträge durchführen. Den „Path to configuration file“ auf „typo3conf/realurl_conf.php“ einstellen und die Option für „Enable automatic configuration“ muss ausgeschaltet werden.



3.    Löschen Sir den Seitencache der Seiten im TYPO3 Backend.

4.    Die Einrichtung von “Real URL” ist damit abgeschlossen. Sie können jetzt die TYPO3 Seiten mit Ihren Namen aufrufen.

 

Hinweis  Für manche Extensions  sind noch zusätzliche Anpassungen für die richtige Funktion von „RealURL“ erforderlich. Sehen Sie dazu genauers in den Beschreibungen zu den jeweiligen Extensions oder Website http://www.typo3knowledge.ch/category/extensions/realurl-extensions/

 

Eine zusätzlich zu installierende Extension wäre „jb_realurl_regeneration“. Mit dieser Extension können die Datenbankeinträge für „Real URL“ regeneriert werden. Die ist nach Umbenennungen von Seiten notwendig.

 


12.11.5    Liste möglicher Fehler in RealURL

 

12.11.5.1    Fehler mit eingerichteten “Real URL“: was not matching „xxxxxx“ actually found

 

 

Abhilfe:

Der URL der angezeigt wird http://www.rpw.com/cms/produkte/produktinfos/ scheint richtig zu sein, nur erscheint diese Fehlermeldung. Wenn im URL aber der Eintrag „cms“ verdoppelt wird erscheint die Seite richtig: http://www.rpw.com/cms/cms/produkte/produktinfos/

 

Wenn die Seite dann funktioniert, legen Sie im Root-Template folgende Einträge an:

config.baseURL = http://www.company.com/typo3verzeichnis/

 

Wobei die Einträge „www.company.com“  durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde ersetzt werden. Der Eintrag „config.BaseURL = 1“ ist ab TYPO3 Version 4.1.x nicht mehr notwendig.

 

Dies kann aber auch an einem falschen Eintrag in Ihrer „realurl_conf.php“. Kontrollieren Sie unter dem Abschnitt „preVars“ ob ein Eintrag ‚type’ => „notfound’ vorhanden ist der diesen Fehler auslöst. Wenn dies der Fall ist ändern Sie den ‚notfound’ auf ‚bypass’.

 


12.11.5.2    Fehler bei “Real URL“ funktionieren alle Seiten außer „TYPO3“

 

Immer wenn der Menüpunkt „TYPO3“ oder Untermenü davon aufgerufen werden erscheint wird folgende Fehlermeldung:

 

 

Ursache:

Dieser Fehler tritt immer dann auf wenn versucht wird auf den URL http://www.realpowerwork.com/typo3/dokumente.html ohne vorangestellte Sprachkürzel zuzugreifen, d.h. für die deutsche Seite wäre der richtige URL

http://www.realpowerwork.com/de/typo3/dokumente.html

Dies passiert immer dann wenn die Seite zum ersten mal geöffnet wird, und noch keine Sprachumschaltung erfolgt ist. Zusätzlich erfolgt ja für den Text „typo3“ durch das „mod_rewrite“ Modul kein Mapping. Daher lüft die Seite dann auf Fehler.

 

Abhilfe:

Es muss durch die RealURL Konfiguratinb sichergestellt werden, dass alle Seiten immer das Sprachkürzel erhalten.

Dazu müssen Sie folgende Änderung in der RealURL Konfigurationdatei „realurl_conf.php“ durchführen:

 

                        array(
                             'GETvar' => 'L',
                             'valueMap' => array(
                                   'de' => '0',
                                   'en' => '1',
                                   'es' => '4',
                             ),
                             'valueDefault' => 'de',
                             // 'noMatch' => 'bypass',
                        ),

 

 


12.11.5.3    Fehler mit eingerichteten “Real URL“: File „xxxxxx“ was not found!

 

 

Abhilfe:

Kontrollieren Sie in Ihrer “realurl_conf.php” ob im Abschnitt “fileName“ der Eintrag:

„defaultToHTMLsuffixOnPrev = 1,“ vorhanden ist. Wenn nicht, erstellen Sie diesen Eintrag.

 

12.11.5.4    Fehler mit eingerichteten “Real URL“: was not found keyword for a postVarSet

 

 

 

Abhilfe:

Wenn Sie in der „reaurl_conf.php“ für die Real URL Einstellungen folgenden Eintrag haben:
“appendMissingSlash = „ifNoFile“ entfernen oder remarken Sie diesen Eintrag und testen Sie nochmals.

Dies kann auch an einem falschen Eintrag in Ihrer „realurl_conf.php“. Kontrollieren Sie unter dem Abschnitt „preVars“ ob „arrays“, welche nicht aufgelöst werden können, entweder mit einer  ’noMatch’ => ‚bypass’ oder mit ‚type’ => ‚bypass’ verlassen werden.

 

Sie können auch Testweise eine minimal Konfiguration für Real URL in der „realurl_conf.php“ verwenden um den Fehler einzugrenzen:

 

// Configure for Real URL.

$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(

                'init' => array(

                               'enableCHashCache' => 0,             

                ),

                'preVars' => array(

                               array(

                                               'GETvar' => 'no_cache',

                                               'valueMap' => array(

                                                               'no_cache' => 1,

                                               ),

                                               'noMatch' => 'bypass',

                               ),

                               // define language settings

                               array(

                                               'GETvar' => 'L',

                                               'valueMap' => array(

                                                               'de' => '0',

                                                               'en' => '1',

                                                               'es' => '4',

                                               ),

                                               'valueDefault' => '0',

                                               'noMatch' => 'bypass',

                               ),                            

                ),

                'pagePath' => array(

                               'type' => 'user',

                               'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',

                               'spaceCharacter' => '-',

                               'languageGetVar' => 'L',

                               'expireDays' => '3',

                               'autoUpdatePathCache' => '1',

                               'rootpage_id' => '1',

                ),

                'fileName' => array(

                               'defaultToHTMLsuffixOnPrev' => 1,                              

                ),            

);

 

 

12.11.5.5    Fehler mit eingerichteten “Real URL“: could not found, closest page matching is

 

 

 

Abhilfe:

Hier wird zusätzlich nochmals „cms“ vor den aufzurufenden URL gesetzt. Unter diesem URL kann die Seite aber nicht gefunden werden. Wenn der Pfad folgenderweise aussehen sollten entfernen Sie aus dem URL den doppelten „cms“ Eintrag und testen Sie, ob die Seite angezeigt wird: http://www.company.com/cms/cms/news-aktuell/aktuelle-meldungen.html.

 

Wenn die Seite dann funktioniert, legen Sie im Root-Template folgende Einträge an:

config.baseURL = 1

config.baseURL = http://www.company.com/typo3verzeichnis/

 

Wobei die Einträge „www.company.com“  durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde ersetzt werden. Achten Sie auch darauf das die den Slash „/“ am Ende des Verzeichnisses angeben.

 

 

12.11.5.6    Seiten mit „Real URL“ funktionieren nur wird im URL „cms“ verdoppelt

 

Es werden alle aufgerufenen Seiten normal angezeigt nur wird im URL folgendes angezeigt:

http://www.rpw.com/cms/cms/produkte/produktinfos/

 

Abhilfe:

Ihr Base Verzeichnis ist falsch definiert. Legen Sie im Root-Template folgende Einträge an:

config.baseURL = 1

config.baseURL = http://www.company.com/typo3verzeichnis/

 

Wobei die Einträge „www.company.com“  durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde ersetzt werden.

 

12.11.5.7    Fehler bei Tip-a-Friend wird URL falsch erstellt

 

 

Falscher URL:

http://www.realpowerwork.com/index.php?id=31&tipUrl=http://%2Fde%2Ftip-a-friend.html&L=0

Abhilfe:

Bei der Erstellung des URLs hatte sich ein Fehler eingeschlichen. Unten angeführt der fehlerhafte Codeabschnitt:

 

temp.tipafriend = COA

temp.tipafriend {

  wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a>&nbsp;

  # holt die Domain

  10 = TEXT

  1.data = getenv:HTTP_HOST

  # setzt die Texte zusammen

  10.wrap = &tipUrl=http://|

}

 

Hier der berichtigte Codeabschnitt:

 

temp.tipafriend = COA

temp.tipafriend {

  wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a>&nbsp;

  # holt die Domain

  10 = TEXT

  10.data = getenv:HTTP_HOST

  # setzt die Texte zusammen

  10.wrap = &tipUrl=http://|

}

 

 


12.11.5.8    Fehler in “RealURL management” bleibt „ID-to-path mapping“ leer

 

 

Es werden beim keinen der Auswahlen aus dem Verzeichnisbaum die „path mapping“ angezeigt.

 

Abhilfe:

Kontrollierren Sie nochmals Ihre RealURL Konfiguration. Wenn Sie eine eigene RealURL Konfigurationsdatei „realurl_conf.php“ verwenden, achten Sie darauf, dass die Einträge der Vorgabe in diesem Kapitel entsprechen.

 

12.11.5.9    Fehler in RealURL-Verwaltung können Änderungen nicht abgespeichert werden

 

Aus der linken Navigation wird „Info“ und aus dem 1. Dropdown Auswahlmenü wird „RealURL-Verwaltung“ gewählt.

Aus dem 2. Dropdown Auswahlmenü wird „ID-to-path mapping“ gewählt.

 

 

Wenn jetzt versucht wird einen „Path:“ zu ändern so wird nach klicken auf „Save“ oder auf das Diskettensymbol nachher wieder der alte Eintrag angezeigt.

 

Beispiel vorher:

 

Durchgeführte Änderung:

 

Nach klicken auf „Save wird wieder der vorherige Eintrag angezeigt:

 

Ursache:

Die RealURL Extension 1.7.0 welche installiert war, dürfte mit der TYPO3 Version 4.5 nicht mehr kompatible sein.

 

Abhilfe:

Installation von RealURL 1.11.2 durchführen

 

Danach kommt die Updateaufforderung:



12.11.6    Umstellung von RealURL auf andere Domain oder ein anderes Verzeichnis

Wenn nach einer Rücksicherung von einer Backup Datei (über w4x_abckup) auf einen anderen Server der einen anderen Domainnamen besitzt, das Stylesheet nicht mehr gefunden wird, kann dies an den Einstellungen im Template Setup Bereich für RealURL liegen.

Suchen Sie im Setup Bericht den Eintrag „config.baseURL“ und ändern oder passen Sie den Eintrag an Ihre Domain an.

Wenn sich die TYPO3 Website in einen Unterverzeichnis der Domäne befindet, vergessen Sie nicht das Unterverzeichnis mit anzugeben und mit einen „/“  abzuschließen.

 

config.baseURL = http://www.Homepage.com/cms/

 

Anstatt “www.Homepage.com muss der Host und Domainname Ihre Website eingetragen werden und anstatt “cms” ein eventuell vorhandenes Unterverzeichnis aus welchen diese TYPO3 Website installiert ist.

 

12.11.6.1    Fehler mit eingerichteten “Real URL“ CSS wird nicht gefunden

 

 

 

Abhilfe:

Wenn Sie in Ihren Root-Template den Eintrag „config.BaseURL = 1“ eingetragen haben und  von einer externen Station mit der IP Adresse auf die Seite zugegriffen haben, wird jetzt versucht die Seite über den Hostname aufzulösen. Wenn Sie keinen DNS Server haben legen Sie auf dieser Station (wenn Sie nicht über das Internet auf die Seite zugreifen) in der „hosts“ Datei einen Eintrag für Ihren Servernamen an.

Wenn Sie über das Internet auf die Seite zugreifen wollen, muss der Domänenname der in der Browser Adressleiste angezeigt wird, öffentlich registriert sein, ansonsten kann der Domänenname nicht aufgelöst werden.

 

Sollte der Fehler immer noch auftreten kann auch Ihr Base Verzeichnis falsch definiert sein.

config.baseURL = http://www.company.com/typo3verzeichnis/

 

Wobei die Einträge „www.company.com“  durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde, ersetzt werden.

 


12.12            Einrichtung Formhandler (formhandler)

 

12.12.1    Was macht diese Extension?

Wenn Sie an die Grenzen der Standard-Funktionalität von TYPO3 Mailformular angelangt sind (vor allem wenn Sie möchten, dass die Form um spezielle Funktionen erweitert wird), können Sie diese Extension verwenden. Um mit Ihrem herkömmlichen HTML-Formulare (als HTML-Snippets) die volle Mailformular Funktionalität zu erhalten.

 

Diese Erweiterung ist als Folge-Extension zur „th_mailformplus“ und fast aller dahinterliegenden Funktionen des „th_mailformplus“ zu sehen.  Viele weitere neue Funktionen mit einer völlig neuen Architektur- und Code. Das Ergebnis ist eine sehr flexible Herangehensweise an Form-Handling.

 

Die neue Architektur und TypoScript-Konfiguration ist es möglich, einfache Steuerung der Verarbeitung der Form, indem eine unendliche Anzahl von Prüfungen und Interzeptoren zur Bildung von Formularen zur Verfügung stehen. Die Bezeichnung Interzeptor kommt vom englischen intercept, was bedeutet, dass Sie etwas abfangen, bevor es passiert.

 

Nach erfolgreicher Formularübertragung Sie können die Eingabewerte durch spezielle Interzeptoren für die abschließende Verarbeitung formatieren und dem so genannten "Finisher" übergeben. Der „Finisher“ wird verwendet, um die Daten in die Datenbank speichern, E-Mails versenden, auf eine Seite zu verlinken, usw.

 

Funktionen vom Formhandler:

 

·         HTML-Template basiert

·         Server-Seite Fehlerprüfungen

·         Senden eingereicht Werte als E-Mail

·         auf eine Seite umleiten nach erfolgreicher Einreichung

·         Bewahren Sie übermittelten Daten in DB

·         Captcha-Unterstützung (captcha, sr_freecap, jm_recaptcha, Mathguard, wt_calculating_captcha)

·         Mehrseitige Formulare

·         HTML-Mails, Text-Mails, multipart E-Mails (HTML + plain)

·         Datei-Upload Handhabung

·         mehrseitige Formulare mit den Bedingungen (Filialen)

·         Frontend mehrsprachige Unterstützung

·         Backend-Modul zur Verwaltung und Export übermittelten Daten (PDF, CSV)

·         etc.

 

Vorteile der Extension:

Sie können schon vorhandene HTML Email-Formulare verwenden, welche nur durch kleine Anpassungen für die Extension adaptiert werden.

 

12.12.2    Installation von Formhandler

 

1.    Extension Formhandler (formhandler) installieren.

2.    Wählen Sie „Install extension“ und danach „Make Updates“.



3.    Wählen Sie „use references to template instead…“ vor dem anklicken von „Update“ aus.

 

4.    Kopieren Sie die HTML-Vorlagedatei „template.html“ aus dem Verzeichnis „typo3conf/ext/formhandler/Examples/Default/“ in Verzeichnis „fileadmin/templates/html“ mit dem Namen „contact_mailform_de.html“.
DA die Standardsprache Englisch ist, muss eine Anpassung der HTML-Template Datei vorgenommen werden:

 

 <!-- ###TEMPLATE_FORM1### begin -->

###ERROR###

<div id="formhandler_contact_form">

                <form id="mailform" method="post" action="###REL_URL###" enctype="multipart/form-data">

                               <fieldset class="csc-mailform">

                                               <legend>###LLL:legend###</legend>

 

                                               <input type="hidden" name="formhandler[submitted]" value="1" />

                                               <div class="csc-mailform-field">

                                                               ###error_firstname###

                                                               <label for="firstname">###LLL:firstname### ###required_firstname###</label>

                                                               <input type="text" name="formhandler[firstname]" id="firstname" value="###value_firstname###"/>

                                                               <div class="clear"></div>

                                               </div>

                                               <div class="csc-mailform-field">

                                                               ###error_lastname###

                                                               <label for="lastname">###LLL:lastname### ###required_lastname###</label>

                                                               <input type="text" name="formhandler[lastname]" id="lastname" value="###value_lastname###"/>

                                                               <div class="clear"></div>

                                               </div>

                                               <div class="csc-mailform-field">

                                                               ###error_email###

                                                               <label for="email">###LLL:email### ###required_email###</label>

                                                               <input type="text" name="formhandler[email]" id="email" value="###value_email###"/>

                                                               <div class="clear"></div>

                                               </div>

 

                                               <div class="csc-mailform-field">

                                                               ###error_text###                                                

                                                 <label for="text">###LLL:text######required_text###</label>

                                                 <textarea cols="50" rows="5" name="formhandler[text]" id="text" style="width:320px;">###value_text###</textarea>                                     

                                               </div>

                                              

                                               <!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

                                               <div class="tx-extension-pi1-captcha">

        <div class="captcha-left">                                       

                                                                 <span class="captcha-text">Eingabeüberprüfung: *</span>

          <br/>

          <span class="captcha-note">(um Mißbrauch dieser Funktion zu vermeiden geben Sie bitte die Buchstaben des Bildes in das nebenstehende Feld ein.)</span>

        </div> 

                                                               ###CAPTCHA###

        <br />

        <input type="text" size=30 name="captchafield" value="">                                                              

                                               </div>

                                               <!--###CAPTCHA_INSERT###-->

 

                                               <div class="csc-mailform-field">

                                                               <p>###LLL:required_fields###</p>

                                                               <input type="submit" value="###LLL:submit###" ###submit_nextStep###/>

                                               </div>

                               </fieldset>

                </form>

</div>

<!-- ###TEMPLATE_FORM1### end -->

 

<!-- ###TEMPLATE_EMAIL_USER_PLAIN### begin -->

Hallo ###value_firstname### ###value_lastname###,

 

Sie haben gerade das Kontaktformular auf der RealPowerWorks Website ausgefüllt.

 

Danke für Ihre Anfrage, wir werden so rasch wie möglich antworten.

 

RealPowerWork

Support Team

<!-- ###TEMPLATE_EMAIL_USER_PLAIN### end -->

 

<!-- ###TEMPLATE_EMAIL_USER_HTML### begin -->

<p>

                Hallo ###value_firstname### ###value_lastname###,

</p>

<p>

                Sie haben gerade das Kontaktformular auf der RealPowerWorks Website ausgefüllt.

</p>

<p>

                Danke für Ihre Anfrage, wir werden so rasch wie möglich antworten.

</p>

RealPowerWork

Support Team

<!-- ###TEMPLATE_EMAIL_USER_HTML### end -->

 

<!-- ###TEMPLATE_EMAIL_ADMIN_PLAIN### begin -->

Hello Admin,

 

A user has just filled out the form.

 

###LLL:lastname### ###value_lastname###

###LLL:firstname### ###value_firstname###

###LLL:email### ###value_email###

 

<!-- ###TEMPLATE_EMAIL_ADMIN_PLAIN### end -->

 

<!-- ###TEMPLATE_EMAIL_ADMIN_HTML### begin -->

<html>

                <head>

                               <!-- OUTLOOK DOES NOT SEE STYLES LOCATED IN THE HEAD :( -->

                </head>

                <body>

                               <style>

                                               p, table{font-family: Verdana; font-size: 10pt}

                                               .leftColumn {padding-top: 10px; padding-right: 5px; border-bottom: 1px dotted black}

                                               .rightColumn {padding-top: 10px; border-bottom: 1px dotted black; font-weight: bold}

                               </style>

                               <p>Hello Admin,</p>

                               <p>A user has just filled out the form.</p>

                               <table cellpadding="0" cellspacing="0">

                                               <tr>

                                                               <td class="leftColumn">###LLL:lastname###</td>

                                                               <td class="rightColumn">###value_lastname###</td>

                                               </tr>

                                               <tr>

                                                               <td class="leftColumn">###LLL:firstname###</td>

                                                               <td class="rightColumn">###value_firstname###</td>

                                               </tr>

                                               <tr>

                                                               <td class="leftColumn">###LLL:email###</td>

                                                               <td class="rightColumn">###value_email###</td>

                                               </tr>

 

                               </table>

                </body>

</html>

<!-- ###TEMPLATE_EMAIL_ADMIN_HTML### end -->

 

<!-- ###TEMPLATE_SUBMITTEDOK### begin -->

 

<table>

                <tr>

                               <td>###LLL:firstname###</td>

                               <td>###value_firstname###</td>

                </tr>

 

                <tr>

                               <td>###LLL:lastname###</td>

                               <td>###value_lastname###</td>

                </tr>

 

                <tr>

                               <td>###LLL:email###</td>

                               <td>###value_email###</td>

                </tr>

 

</table>

<div>

                ###PRINT_LINK### / ###PDF_LINK### / ###CSV_LINK###

</div>

<!-- ###TEMPLATE_SUBMITTEDOK### end -->

 

Hinweis  Für einen Multilanguage Umgebung kopieren Sie Datei im selben Verzeichnis nochmals mit den Namen „contact_mailform_en.html“, „contact_mailform_es.html“, etc. Öffnen Sie danach jede Datei und passen Sie die Texte der jeweiligen Sprache an.

 

5.    Kopieren Sie die CSS-Vorlagedatei „styles.css“ aus dem Verzeichnis „typo3conf/ext/formhandler/Examples/MasterTemplate“ in Verzeichnis „fileadmin/templates/css“ mit dem Namen „formhandler.css“. Ändern Sie die CSS Dateien entsprechend Ihren Bedürfnissen ab.

 

#formhandler_contact_form {

        width: 640px;

}

 

#formhandler_contact_form .row {

        margin-bottom:10px;

}

 

#formhandler_contact_form input.hidden, #formhandler_contact_form input[type="hidden"] {

        display: none;

        border: none;

}

 

#formhandler_contact_form input.submit, #formhandler_contact_form input[type="submit"] {

        border:1px solid #ccc;

        width:auto;

        display:inline;

        clear:both;

}

 

#formhandler_contact_form .mathguard {

        padding:0;

}

 

#formhandler_contact_form .interests_box {

        border:1px solid #dedede;

        padding:8px;

        width:200px;

        margin-left:200px;

        height:180px;

        float:left;

}

#formhandler_contact_form .contact_box {

        border:1px solid #dedede;

        padding:8px;

        width:200px;

        margin-left:200px;

        float:left;

}

 

#formhandler_contact_form .interests_box label,

#formhandler_contact_form .contact_box label {

        width:70px;

}

 

#formhandler_contact_form fieldset, #formhandler_contact_form input[type="text"], #formhandler_contact_form textarea {

        border:1px solid #dedede;

}

 

#formhandler_contact_form fieldset {

        padding:30px 10px 10px 10px;

}

 

#formhandler_contact_form input {

        padding:5px;

}

 

.error {

        color:red;

        font-weight:bold;

}

 

#formhandler_contact_form label {

        display:block;

        float:left;

        width:200px;

}

#formhandler_contact_form input[type="text"], #formhandler_contact_form textarea {

        display:block;

        width:200px;

        float:left;

}

 

#formhandler_contact_form .clear {

        clear:both;

}

 

#formhandler_contact_form .contexthelp {

        border:1px solid #dedede;

        background-color: #efefef;

        padding:5px;

        display:block;

        font-size:small;

}

 

#formhandler_contact_form .info {

        float:left;

        width:200px;

        margin-left:20px;

}

 

6.    Kopieren Sie die Sprachdatei „lang.xml“ aus dem Verzeichnis „typo3conf/ext/formhandler/Examples/Default/“ in Verzeichnis „fileadmin/templates/lang“ mit dem Namen „formhandler.xml“.

Fügen Sie in der Sprachdatei für jede Sprache folgende Zeilen ein um ein zusätzlichen Eingabefelder in einer Multilanguage Umgebung anzuzeigen:

 

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

<T3locallang>

                <data type="array">

                               <languageKey index="default" type="array">

                                               <label index="email">E-Mail</label>

                                               <label index="text">Text</label>

                </languageKey>

                <languageKey index="en" type="array">

                                               <label index="text">Text</label>

                                               <label index="captcha">Validate entry</label>                     

                </languageKey>

                <languageKey index="de" type="array">

                                               <label index="text">Text</label>

                                               <label index="captcha">Eingabeüberprüfung</label>                                        

                </languageKey>

                <languageKey index="de" type="array">

                                               <label index="text">Texte</label>

                                               <label index="captcha">Validation des entrées</label>

…  

 

7.    Kopieren Sie den Inhalt der Datei „typoscript_setup.txt“ aus dem Verzeichnis „typo3conf/ext/formhandler/example_form/singlepage_form/“ in den Setup Bereich des TYPO3 Templates, welches für diese Seite verwendet wird und führen Sie folgende Änderungen durch:

 

############## Konfiguration Formhandler (formhandler) ##################

#### Website contact mail form ####

plugin.Tx_Formhandler.settings {

  requiredSign = &nbsp;*

  templateFile = fileadmin/templates/html/contact_mailform_de.html

  langFile = fileadmin/templates/lang/formhandler.xml

  cssFile = fileadmin/templates/css/formhandler.css

 

  # HTML wrapping by validation error

  errorListTemplate {

       totalWrap = <ul>|</ul>

       singleWrap = <li class="error">|</li>

  }

       singleErrorTemplate {

       singleWrap = <span class="error">|</span><br />

  }

 

  # errorChecks for the form fields 

  validators.1.class = Tx_Formhandler_Validator_Default

  validators.1.config.fieldConf {

    name {

      errorCheck.1 = required

      errorCheck.1 = maxLength

      errorCheck.1.value = 50

    }

    email {

      errorCheck.1 = required

      errorCheck.2 = email

    }

    text {

      errorCheck.1 = required

    }   

    captchafield.errorCheck.1 = captcha

  }

 

  # finisher contact entry

  finishers.1.class = Tx_Formhandler_Finisher_Mail

  finishers.1.config {

    limitMailsToUser = 5

    admin {

    to_email = webmaster@realpowerwork.com

    to_name = RealPowerWork Webmaster

    subject = Contact Request

    sender_email = contactform@realpowerwork.com

    replyto_email = email

    replyto_name = name

   }

   user {

     to_email = email

     to_name = name

     subject = ###LLL:user_subject###

     sender_email = contactform@realpowerwork.com

     sender_name = RealPowerWork Website

     replyto_email = webmaster@realpowerwork.com

     attachPDF {

         class = Generator_WebkitPdf

         config {

                 pid = 23

         }

     }

   }

 

   # finisher DB Entry

   finisher.2 {

       class = Tx_Formhandler_Finisher_DB

       config {

             table = tt_content

             key = uid

             fields {

                    header {

                           mapping = name

                           if_is_empty = None given

                    }

                    bodytext {

                           mapping = subject

                           separator = ,

                    }

                    hidden = 1

                    pid = 39

                    subheader.special = sub_datetime

                    crdate.special = sub_tstamp

                    tstamp.special = sub_tstamp

                    imagecaption.special = ip              

             }

       }

  }

 

  # finisher redirect page

  finishers.3 {

      class = Tx_Formhandler_Finisher_Redirect

      config {

           redirectPage = 1

      }

   }

  finishers.4.class = Tx_Formhandler_Finisher_SubmittedOK

  finishers.4.config {

       returns = 1

       actions {

             pdf {

                    class = Generator_WebkitPdf

                    config {

                             pid = 23

                    }     

             }

             csv {

                    class = Generator_Csv            

             }

       }

  }

}

 

8.    Erstellen Sie eine neue Seite in TYPO3 mit dem Namen „Kontakt“, welche das Mailformular enthalten soll.

9.   Erstellen Sie ein neues Inhaltselement als „Allgemeines Plug-In“ und wählen Sie im Reiter „Plug-In“ die Extension „Formhandler“ aus.

 

10. Geben Sie in die angezeigten Felder nichts ein, da die Werte schon über TypoScript im Root Template festgelegt wurden.



11. Das Inhaltselement abspeichern.

12. Anzeige des Formulars im Frontend.

12.12.3    Anpassung Formhandler für Mehrsprachigkeit (Multilanguage)

 

1.    Wenn Sie die Templatedatei im Inhaltselement eingetragen haben, entfernen Sie diesen Eintrag wieder, denn diese wird jetzt über TS festgelegt.

2.    Legen Sie für jede Sprache ein HTML-Template an. Kopieren Sie dazu das vorhanden Template „contact_mailform_de.html“ aus dem Verzeichnis „fileadmin/templates/html/“ auf die gewünschten Sprachen wie z.B. „contact_mailform_en.html“ und „contact_mailform_es.html“ im selben Verzeichnis.

3.    Kopieren Sie die Datei „contact_mailformplus_en.html“ und erzeugen Sie eine neue im selben Verzeichnis mit dem Namen „contact_mailformplus_de.html“.

4.    Bearbeiten Sie die „„contact_mailformplus_de.html“ Datei und übersetzen Sie die E-Mail Texte auf die deutsche Sprache.

5.    Geben Sie folgenden Code im Setup Bereich Ihres Templates ein.

 

# Konfiguration vom MailformPlusPlus (mailformplusplus)

# select html forms for multilanguage

[globalVar = GP:L = 0]

plugin.Tx_Formhandler.settings.templateFile = fileadmin/templates/html/contact_mailform_de.html

[global]

 

[globalVar = GP:L = 1]

plugin.Tx_Formhandler.settings.templateFile = fileadmin/templates/html/contact_mailform_en.html

[global]

 

[globalVar = GP:L = 1]

plugin.Tx_Formhandler.settings.templateFile = fileadmin/templates/html/contact_mailform_de.html

[global]

 

ACHTUNG: Alle TS Einstellungen die für "plugin.Tx_Formhandler.settings" gemacht werden, sind dies sozusagen die Default-Einstellungen vom „Formhandler“ und werden durch die Eingabe im eigentlichen „Formhandler“ Element überschrieben! D.h. wenn man das zu verwendende HTML-Template (=Formular) mit TypoScript definiert, dann muss man die Felder im Inhaltselement „Formhandler“ leer lassen!

 

6.    Erstellen Sie auf der Seite „Kontakt“ die zusätzlichen Seiten für die einzelnen Sprachen und passen Sie die Überschriften an. Kopieren Sie dann den Seiteninhalt der „Default“ Seite auf diesen neue Seiten.

7.    Entferne Sie die automatisch eingefügte Überschrift „(Kopie 1)“ wieder aus dem Inhaltelement

8.    Überprüfen Sie die Funktion der Mehrsprachigkeit indem Sie mit dem Ländersymbol die Sprache wechseln.

 

12.12.4    Captcha in Mailformplus aktivieren

In einem vorherigen Kapitel wurde die „captcha“ Extension installiert. Wir wollen für Mailformplus gleich diese Extension als „Captcha“ verwenden.

 

1.    Schreiben Sie in den Setup Bereich Ihres Template zur Aktivierung von Captcha folgende Zeilen hinzu.

 

…           

                stylesheetFile = fileadmin/templates/css/mailformplus.css

 

                # activate extension "captcha" in th_mailform

                plugin.tx_thmailformplus_pi1.captchaFieldname = captchafield

}

 

plugin.tx_thmailformplus_pi1.default {

…           

 

2.   In die zugehörigen HTML-Template Dateien der Formulare fügen Sie folgende Zeilen ein.

 

<!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

<div class="tx-extension-pi1-captcha">                                        

                <span class="captcha_text">Eingabeüberprüfung: *</span>

                <br />

                <span class="captcha_note">(um Mißbrauch dieser Funktion zu vermeiden geben Sie bitte die Buchstaben des Bildes in das nebenstehende Feld ein.)</span>

                <span class="captcha_image">###CAPTCHA_HTML###</span>>

                <br />

                <input class="captcha_input" type="text" size=30 name="captchafield" value="">                                             

</div>

<!--###CAPTCHA_INSERT###-->

 

<p>###LLL:required_fields###</p>

                                              

<input type="submit" value="###LLL:submit###"/>

 

3.    Für die Formatierung von den Captcha Elementen wurde folgendes in die CSS Datei eingefügt.

 

/* CSS for captcha extension */

.tx-extension-pi1-captcha {

    padding-top: 20px;

}

 

.captcha-left {

    float: left;

margin-right: 10px;

}

 

.captcha-text {

    font-weight: bold;

    width: 150px

}

 

.captcha-note {

    display: block;

    font-size: 9px;

    width: 150px;

}

 

12.12.5    Update vom MailformPlus auf Formhandler

 

Unter MailformPlus (th_mailformplus) sah der Eintrag im Setup Bereich vom Root Template wie folgt aus:

 

plugin.tx_thmailformplus_pi1 {

            langFile = typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.php

            default {

                        email_to = admin@host.com

                        email_sendtouser = email

                        email_subject_user = Your contact request

                        email_sender = noreply@host.com

            }

            fieldConf {

                        name {

                                   errorCheck = required

                        }

                        email {

                                   errorCheck = required,email

                        }

                        text {

                                   errorCheck = required

                        }

            }

}

 

Bei der Verwendung der Extension Formhandler muss der Eintrag dann folgenderweise abgeändert werden:

 

plugin.Tx_Formhandler.settings {

            langFile = typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.php

            validators.1.class = Validator_Default

            validators.1.config.fieldConf {

                        name {

                                   errorCheck.1 = required

                        }

                        email {

                                   errorCheck.1 = required

                                   errorCheck.2 = email

                        }

                        text {

                                   errorCheck.1 = required

                        }

                        fieldConf {

                                   captchafield.errorCheck.1 = captcha

                        }

            }

            finishers.1.class = FinisherMail

            finishers.1.config {

                        admin {

                                   to_email = admin@host.com

                                   sender_email = noreply@host.com

                        }

                        user {

                                   to_email = email

                                   sender_email = noreply@host.com

                                   subject = Your contact request

                        }

            }

            finishers.2.class = Tx_Formhandler_Finisher_SubmittedOK

}

 

12.12.6    Fehler in Formhandler

 

12.12.6.1    Fehler auf Webseite mit „Formhandler“ Plugin „No TypoScript config found“

 

Beim Aufruf der Webseite mit dem Plugin „Formhandler“ wird folgende Meldung angezeigt.

 

No TypoScript config found fpr Formhandler! Please add the static template or write your own configuration.

 

Abhilfe:

Sie müssen im TYPO3 Root Template im Setup Bereich noch die Extension „Formhandler“ definieren.

 

############## Konfiguration Formhandler (formhandler) ##################

#### Website contact mail form ####

plugin.Tx_Formhandler.settings {

  requiredSign = &nbsp;*

  langFile = typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.php

  cssFile = fileadmin/templates/css/formhandler.css

 

  # errorChecks for the form fields 

  validators.1.class = Validator_Default

  validators.1.config.fieldConf {

    name {

      errorCheck.1 = required

    }

    email {

      errorCheck.1 = required

      errorCheck.2 = email

    }

    text {

      errorCheck.1 = required

    }

    fieldConf {

      captchafield.errorCheck.1 = captcha

    }

  } 

   finishers.2 {

     class = Tx_Formhandler_Finisher_Default

     config {

     }     

}

 


12.12.6.2    Fehler auf Webseite mit „Formhandler“ Plugin „Missing finishers!“

 

Es wurde jetzt TypoScript für die Extension „Formhandler“ definiert doch nun kommt folgender Meldung beim Aufruf der Webseite.

 

Missing finishers! The Flexform contains 'webmanager@realpowerwork.com' but typoscript configuration is incomplete. Please add : Tx_Formhandler_Finisher_Mail

 

Abhilfe:

 

Fügen Sie einen Block für den „Tx_Formhandler_Finischer_Mail“ ein.

 

plugin.Tx_Formhandler.settings {

  finishers.1.class = Tx_Formhandler_Finisher_Mail

  finishers.1.config {

    admin {

    to_email = ebmaster@realpowerwork.com

    to_name = RealPowerWork Webmaster

    subject = Contact Request

    sender_email = contactform@realpowerwork.com

    replyto_email = email

    replyto_name = name

   }

   user {

     to_email = email

     to_name = name

     subject = ###LLL:user_subject###

     sender_email = contactform@realpowerwork.com

     sender_name = RealPowerWork Website

     replyto_email = webmaster@realpowerwork.com

   }

   finishers.2 {

     class = Tx_Formhandler_Finisher_Default

     config {

     }

...

}

 

12.12.6.3    Fehler mit „Formhandler“ Plugin „Missing finishers!....Redirect“

 

Nach Definition vom TypoScript Block „Tx_Formhandler_Finisher_Redirect“ kommt nun folgender Meldung beim Aufruf der Webseite.

 

Missing finishers! The Flexform contains '1' but typoscript configuration is incomplete. Please add : Tx_Formhandler_Finisher_Redirect

 

Abhilfe:

 

Fügen Sie einen Block für den „Tx_Formhandler_Finischer_Redirect“ ein.

 

plugin.Tx_Formhandler.settings {

   finishers.3 {

      class = Tx_Formhandler_Finisher_Redirect

      config {

           redirectPage = 1

      }

   }

}

 

Wobei die Nummer “1” die TYPO3 ID ist auf welche danach gesprungen werden soll.

 

12.12.6.4    Fehler mit „Formhandler“ Plugin „No template file found“

 

No template file found. Check your TypoScript setup and/or your plugin settings and make sure you defined a template file!

 

Abhilfe:

 

Fügen Sie folgende Zeile in die TYPO3 Skript Definition „Formhandler“ hinzu.

 

plugin.Tx_Formhandler.settings {

   templateFile = fileadmin/templates/html/contact_mailform.html

}

 

12.12.6.5    Fehler mit „Formhandler“ Plugin „The file… is no TYPO3 language file!”

 

TYPO3 Fatal Error: The file "typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.xml" is no TYPO3 language file!

 

Abhilfe:

 

Fügen Sie folgende Zeile in die TYPO3 Skript Definition „Formhandler“ hinzu.

 

plugin.Tx_Formhandler.settings {

   templateFile = fileadmin/templates/html/contact_mailform.html

}

 

 

12.12.6.6    Fehler mit „Formhandler“ Plugin wird ohne CSS Style angezeigt

 

 

Abhilfe: Kontrollieren Sie ob die CSS Datei „styles.css“ in das richtige Verzeichnis mit dem Namen „formhandler.css“ kopiert wurde.


 

12.12.6.7    Fehler im Error erscheint „The following error occured:“ obwohl deutsche Sprache

 

 

Ursache:

Sie verwenden die Standard HTML-Template Datei in welchen die E-Mail Texte alle auf Englisch ausgeführt sind.

 

Abhilfe:

Wenn Sie nur eine Sprache auf der Website verwenden können Sie die Text in der Datei direkt auf Deutsch ändern. Wenn Sie eine mehrsprachige Website betreiben müssen Sie für jede Sprache eine eigene HTML-Template Datei erzeugen und diese im Setup Bereich vom Template bei der Sprachdefinition angeben. Siehe dazu Kapitel „Anpassung von Formhandler für Mehrsprachigkeit“.

 

 

 


Einrichtung von Gästebuch (ve_guestbook)

 

12.12.7    Was macht diese Extension?

·         NEU: Schutz gegen Cross-Site-Scripting (XSS) Attacken mit der TYPO3-Kernel-Methode removeBadHTML (Dank an Rupert Germann)

·         Es gibt drei verschiedene Modi Umsetzung: Gästebuch Liste, Formular für einen neuen Eintrag und einen Teaser-Modul. Als Teaser werden die Anreißer auf der Homepage oder einer Themenüberblicksseite bezeichnet.

·         Weitgehend konfigurierbar Gästebuch Inhaltselement.

·         Sie können bestimmte Dinge wie Form Pflichtfelder, stripping HTML-Tags, die Validierung der E-Mail- und Webseitenfelder einstellen.

·         Für das Gästebuch Anzeige und das Teaser-Modul können Sie die Anzahl und die Sortierung der Einträge festlegen.

·         Außerdem können Sie die Textlänge der Eintragung im Teaser-Modus festlegen. Es gibt Langwörter Schutz.

·         Beinhaltet ein CSS-basierte Template pi1/guestbook_template.html.

·         E-Mail Benachrichtigung an eine benutzerdefinierte E-Mail- und an die Benutzer E-Mail Adresse nach dem neuen Gästebuch-Einträge.

·         Ersetzen von BBCodes mit „Emoticons“, Anzeige der E-Mail mit Spamschutz, Kommentarmöglichkeit für den Backend Benutzer vom Gästebuch.

·         Sie können Einträge aus „tt_guest“ sehr leicht umwandeln zu „ve_guestbook“ Einträgen mit einer einzigen SQL-Anweisung.

 

12.12.8    Installation vom Gästebuch

 

1.    Holen Sie sich die Extension „ve_guestbook“ V2.10.1 vom Online-Repository.

2.    Installieren Sie die Extension.

3.   Kopieren Sie die HTML-Vorlagedatei „guestbook_template.html“ aus dem Verzeichnis „typo3conf/ext/ve_guestbook/pi1/“ in Verzeichnis „fileadmin/templates/html/“ mit dem Namen „ve_guestbook.tmpl“.

4.    Für ein breiteres Textfeld Ändern Sie im HTML-Template folgendes:

 

…           

<tr>

                               <td valign="top">###FORM_ENTRY### <span class="tx-guestbook-form-obligationfield">###FORM_ENTRY_OBLIGATION###</span></td>

                               <td><textarea name="tx_veguestbook_pi1[entry]" class="tx-guestbook-form-textarea" rows="8" cols="50">###VALUE_ENTRY###</textarea></td>

                </tr>

 

Hinweis  Bearbeiten Sie die Datei nur mit einem Editor (PSPad) mit welchen Sie in UTF-8 speichern können, wenn Sie als Standardzeichensatz UTF-8 verwenden.

 

5.    Fügen Sie noch den Text für die Pflichtfelder ein:

 

..

<!--###CAPTCHA_INSERT###-->

<tr>       

                <td>&nbsp;</td>

                <td>Mit <span class="tx-guestbook-form-obligationfield">*</span> gekennzeichnete Felder <strong>müssen</strong> ausgefüllt werden.</td>

</tr>      

<tr>        

  <td>&nbsp;</td>

 

6.    Das angepasste HTML Template könnte so aussehen.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>ve_guestbook</title>

</head>

 

<body>

 

<!-- ###TEMPLATE_LIST### begin -->

                <div class="tx-guestbook-result">

                               ###RESULT_COUNT###

                </div>

               

                <div class="tx-guestbook-pagination">

                               ###LINK_PREV### ###PAGES### ###LINK_NEXT###

                </div>

                <div class="tx-guestbook-clear">&nbsp;</div>

               

                <!-- ###CONTENT### begin -->

 

                <!-- ###ENTRY### begin -->

                               <h2 class="tx-guestbook-header">###GUESTBOOK_FIRSTNAME### ###GUESTBOOK_SURNAME### ###GUESTBOOK_FROM### ###GUESTBOOK_PLACE###</h2>

                               <div class="tx-guestbook-date">###GUESTBOOK_DATE###</div><br />

                               <div class="tx-guestbook-right">

                                                                             

                                               ###GUESTBOOK_ENTRY###

                                               <!-- ###ENTRY_ENTRYCOMMENT### begin -->

                                                               <h3>###FORM_ENTRYCOMMENT###:</h3>

                                                               <class="tx-guestbook-comment">###GUESTBOOK_ENTRYCOMMENT###

                                               <!-- ###ENTRY_ENTRYCOMMENT###  end -->

                               </div>

                              

                               <div class="tx-guestbook-clear">&nbsp;</div>

                <!-- ###ENTRY### end-->

               

                <!-- ###CONTENT###  end -->

               

                <div class="tx-guestbook-pagination">

                               ###LINK_PREV### ###PAGES### ###LINK_NEXT###

                </div>

                <div class="tx-guestbook-clear">&nbsp;</div>

<!-- ###TEMPLATE_LIST### end -->

 

 

<!-- ###TEMPLATE_NO_ENTRIES### begin -->

                <h2 class="tx-guestbook-header">###NO_ENTRIES_HEADLINE###</h2>

                <div class="tx-guestbook-list-row">###NO_ENTRIES_TEXT###</div>

<!-- ###TEMPLATE_NO_ENTRIES### end -->

 

 

<!-- ###TEMPLATE_TEASER### begin -->

                <h2 class="tx-guestbook-header">###TEASER_HEADLINE###<class="tx-guestbook-date">###GUESTBOOK_DATE###</h2>

                <div class="tx-guestbook-latest">

                               <!-- ###CONTENT### begin -->

                               <!-- ###ENTRY### begin -->                                                                                             

                               <br />

                               ###GUESTBOOK_FIRSTNAME### ###GUESTBOOK_SURNAME###:<br />

                               ###GUESTBOOK_ENTRY###

                               <!-- ###ENTRY### end-->                  

                               <!-- ###CONTENT###  end -->

                               <class="tx-guestbook-latest-more"><!-- ###LINK_ITEM### -->###TEASER_MORE###<!-- ###LINK_ITEM### -->

                </div>

<!-- ###TEMPLATE_TEASER### end -->

 

 

<!-- ###TEMPLATE_FORM### -->

<class="tx-guestbook-form-error">###FORM_ERROR###

###FORM_ERROR_FIELDS###

 

<form method="post" action="###ACTION_URL###">

<fieldset>

                <legend>###FORM_LEGEND###</legend>

               

                <div class="tx-guestbook-field">

                               <label for="firstname">###FORM_FIRSTNAME### <span class="tx-guestbook-form-obligationfield">###FORM_FIRSTNAME_OBLIGATION###</span></label>

                               <input type="text" name="tx_veguestbook_pi1[firstname]" value="###VALUE_FIRSTNAME###" class="tx-guestbook-form-inputfield-med" id="firstname" />

                </div>

               

                <div class="tx-guestbook-field">

                                <label for="surname">###FORM_SURNAME### <span class="tx-guestbook-form-obligationfield">###FORM_SURNAME_OBLIGATION###</span></label>

                               <input type="text" name="tx_veguestbook_pi1[surname]" value="###VALUE_SURNAME###" class="tx-guestbook-form-inputfield-med" id="surname" />

                </div>

               

                <div class="tx-guestbook-field">

                               <label for="email">###FORM_EMAIL### <span class="tx-guestbook-form-obligationfield">###FORM_EMAIL_OBLIGATION###</span></label>

                               <input type="text" name="tx_veguestbook_pi1[email]" value="###VALUE_EMAIL###" class="tx-guestbook-form-inputfield-big" id="email" />

                </div>

 

                <div class="tx-guestbook-field">

                               <label for="homepage">###FORM_HOMEPAGE### <span class="tx-guestbook-form-obligationfield">###FORM_HOMEPAGE_OBLIGATION###</span></label>

                               <input type="text" name="tx_veguestbook_pi1[homepage]" value="###VALUE_HOMEPAGE###" class="tx-guestbook-form-inputfield-big" id="homepage" />

                </div>

               

                <div class="tx-guestbook-field">

                               <label for="place">###FORM_PLACE### <span class="tx-guestbook-form-obligationfield">###FORM_PLACE_OBLIGATION###</span></label>

                               <input type="text" name="tx_veguestbook_pi1[place]" value="###VALUE_PLACE###" class="tx-guestbook-form-inputfield-med" id="place" />

                </div>

               

  <!-- ###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

  <div class="tx-guestbook-field">

                               <label for="capture">###FORM_CAPTCHA_RESPONSE### <span class="tx-guestbook-form-obligationfield">*</span>###CAPTCHA_IMAGE###</label>

                               <input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" value="" id="capture" />

               

    <!-- ###CAPTCHA_INSERT### -->

      <!-- ###SR_FREECAP_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

                    <div class="tx-guestbook-field">

                                   <label for="freecap">###SR_FREECAP_NOTICE### <span class="tx-guestbook-form-obligationfield">*</span><br /><span class="freecap-span">###SR_FREECAP_CANT_READ###</span></label>

                                   ###SR_FREECAP_IMAGE###&nbsp;<input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" title="###SR_FREECAP_NOTICE###" value="" id="freecap" />

                                 </div>

      <!-- ###SR_FREECAP_INSERT### -->

                                <div class="tx-guestbook-field">

        <label for="message">###FORM_ENTRY### <span class="tx-guestbook-form-obligationfield">###FORM_ENTRY_OBLIGATION###</span></label>

                                   <textarea name="tx_veguestbook_pi1[entry]" class="tx-guestbook-form-textarea" rows="7" cols="30" id="message">###VALUE_ENTRY###</textarea>

      </div>

  </div>

  <div class="tx-guestbook-field">

                <p>Alle Felder mit * mssen ausgefllt werden.</p>

                <input type="hidden" name="id" value="###PID###" />

                <input type="hidden" name="tx_veguestbook_pi1[submitted]" value="1" />

                <input type="submit" value="###FORM_SUBMIT###" class="tx-guestbook-submit" />

  </div>

               

</fieldset>

</form>

<!-- ###TEMPLATE_FORM### end -->

 

 

</body>

</html>

 

7.   Erstellen Sie eine CSS Datei mit dem Namen „ve_guestbook.css“ im Verzeichnis „fileadmin/css“ mit folgenden Einträgen:

/*

** Version   : 1.0

** Datei     : ve_guestbook.css

** Desc      : Gästebuch

** Extension : ve_guestbook V2.10.1

** Changes   : 26.11.2011 - pf - create file version

*/

 

/* CSS Document */

/*.tx-veguestbook-p1 {

  line-hight:1;

}*/

 

* html .tx-veguestbook-pi1,

* html .tx-guestbook-list-header,

* html .tx_guestbook_formfield {

    height:1%;

    overflow:hidden;

}

.tx-veguestbook-pi1 {

    font-size:100%;

}

 

/* error handling */

.tx-veguestbook-pi1 p.tx-guestbook-form-error {

    font-weight:bold;

    color:#ff0000;

}

 

/* display of result count */

.tx-veguestbook-pi1 .tx-guestbook-result {

    font-weight:bold;

    float:left;

}

 

/* pagination */

.tx-veguestbook-pi1 .tx-guestbook-pagination {

    font-size:75%;

    font-weight:bold;

    float:right;

}

 

/* styles for list mode */

/* IE Browser Hack .tx-veguestbook-pi1 h2.tx-guestbook-header */

*+html .tx-veguestbook-pi1 h2.tx-guestbook-header {

    clear:both;

}

 

/* Format Header Text */

.tx-veguestbook-pi1 h2.tx-guestbook-header {

    background:#bfbbd0;

    color:#333333;

    display:block;

    font-size:100%;

    font-weight:bold;

    padding: 0.25em;

    width: 44.5em;

}

 

/* IE Browser Hack .tx-veguestbook-pi1 .tx-guestbook-left */

*+html .tx-veguestbook-pi1 .tx-guestbook-left {

   padding-top: 0.25em;      

}

 

.tx-veguestbook-pi1 .tx-guestbook-left {

    float:left;

    font-size:80%;

    width: 35em;

    background:#EFEFEF;

    min-height: 1em;

    padding: 0.25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-left p {

    color:#dddddd;

}

 

/* IE Browser Hack .tx-veguestbook-pi1 .tx-guestbook-right */

*+html .tx-veguestbook-pi1 .tx-guestbook-right {

    padding: 0.25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-right {

    float:left;

    width: 44.5em;

    background:#e7eff6;

    padding: 0.25em;

    line-height:1;

}             

 

/* styles for latest mode - * html .tx-veguestbook-pi1,

* html .tx-guestbook-list-header,

* html .tx_guestbook_formfield {

                height:1%;

                overflow:visible;

}*/

 

/* IE Browser Hack */

*+html .tx-veguestbook-pi1 .tx-guestbook-latest p,

*+html .tx-veguestbook-pi1 .tx-guestbook-right p {

    padding: 0;

}

 

.tx-veguestbook-pi1 .tx-guestbook-latest p,

.tx-veguestbook-pi1 .tx-guestbook-right p {

    color:#333;

    padding-left: 1em;

}             

 

.tx-veguestbook-pi1 .tx-guestbook-latest p.tx-guestbook-date,

.tx-veguestbook-pi1 .tx-guestbook-right p.tx-guestbook-date {

    font-weight: bold;

}

 

.tx-veguestbook-pi1 .tx-guestbook-right h3 {

    font-size:100%;

    color:#990000;

    font-weight:bold;

    background:none;

}             

 

.tx-veguestbook-pi1 .tx-guestbook-right .tx-guestbook-comment {

    font-size:75%;

    color:#333;

    font-style: italic;

}

 

.tx-veguestbook-pi1 .tx-guestbook-latest {

    display:block;

    padding:0.25em;

    clear:both;

}

 

/* form styles */

.tx-veguestbook-pi1 .tx-guestbook-field {

    clear:both;

    width:100%;

    display:block;

    padding: 0.25em 0;

}

 

.tx-veguestbook-pi1 .tx-guestbook-field label {

    clear: both;     

    display: block;

    float: left;

    width: 10em;

    padding-right: 0.25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-field input.tx-guestbook-form-inputfield-med {

    float:left;

    width:15em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-field input.tx-guestbook-form-inputfield-big {

    float:left;

    width:25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-field textarea.tx-guestbook-form-textarea {

    width: 40em;

    display: block;

    float: left;

}

 

.tx-veguestbook-pi1 .tx-guestbook-field span.tx-guestbook-form-obligationfield {

    color:#990000;

}

 

.tx-veguestbook-pi1 fieldset {

    border:none;

}

 

.tx-veguestbook-pi1 legend {

     display:none;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap {

    float:left;

    display:block;

    background:#F7F7F7;

    border: 1px solid #CCC;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap {

    margin-left:2.25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap img {

    float:left;

    display:block;

    padding-left:0.25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap input {

    float:left;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap label {

    clear:both;

    display:block;

    float:none;

    width:25em;

    margin-bottom:0.5em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap p {

    font-size:75%;

    padding:0.25em;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap h3 {

    display:none;

}

 

.tx-veguestbook-pi1 .tx-guestbook-freecap span.tx-srfreecap-pi2-cant-read {

    color:#990000;

}

 

/* IE Browser Hack .tx-veguestbook-pi1 .tx-guestbook-clear */

*+html .tx-veguestbook-pi1 .tx-guestbook-clear  {

    display:block;

}

 

.tx-veguestbook-pi1 .tx-guestbook-clear {       

    clear:both;

    line-height: 0;

}

 

.tx-veguestbook-pi1 input.tx-guestbook-submit {

    width:auto;

    display:block;

}

 

Kopieren Sie die Sprachdatei „locallang.xml“ aus dem Verzeichnis „typo3conf/ext/ve_guestbook/pi1/“ in ein lokalen Verzeichnis mit den gleichen Namen.
Benennen Sie die originale „locallang.xml“ Datei auf „locallang.xml.old“ um.
Bearbeiten Sie die lokale „locallang.xml“ Datei und ersetzen Sie ggf. „default“ Sprache geben die Standardsprache Ihrer TYPO3 Installation.
Kopieren Sie die Datei nach der Bearbeitung wieder in das Verzeichnis „typo3conf/ext/ve_guestbook/pi1/“.

Hinweis  Bearbeiten Sie die Datei nur mit einem Editor (PSPad) mit welchen Sie in UTF-8 speichern können, wenn Sie als Standardzeichensatz UTF-8 verwenden.

8.    Geben Sie folgenden Code im Setup Bereich Ihres Templates ein:

 

############ Gästebuch (ve_guestbook) ##################

# Konfiguration vom Gästebuch (ve_guestbook)

plugin.tx_veguestbook_pi1 {

   templateFile = fileadmin/templates/html/ve_guestbook.tmpl
   limit = 10

   email_from_name = RealPowerWork Homepage

   email_from_mail = webmaster@realpowerwork.com

   _CSS_DEFAULT_STYLE >

 

  emoticons {

    active = 1

    10 = IMAGE

    10 {

       file = EXT:ve_guestbook/pi1/emoticons/###EMOTICON###.gif

       params = hspace=1 vspace=1 valign=bottom

       border  = 0

       altText = Emoticon

       titleText = Emoticon

     }

 

    subst {

      11.str = :D

      11.val = 1

      12.str = :) || :-)

      12.val = 2

      13.str = :( || :-(

      13.val = 3

      14.str = :cry:

      14.val = 4

      15.str = :?:

      15.val = 5

      16.str = ;) || ;-)

      16.val = 6

      17.str = :D

      17.val = 7

      18.str = :cool:

      18.val = 8

      19.str = :P

      19.val = 9

    }

  }

}

 

9.    Am Ende wird im Setup Bereich Ihres Template beim „page“ Objekt noch die CSS Datei für das Gästebuch eingefügt:

 

# Erstellung des PAGE Objektes und Übergabe der voher erstellten „temp“ Objekte

# des Dokumentes „temp.mainTemplate“ und „temp.headTemplate“

page = PAGE

page {

    includeCSS {  

                file1 = fileadmin/templates/css/ve_guestbook.css

                file2 = fileadmin/templates/css/rpw.css

}

 

10. Erstellen Sie eine neue Seite „Gästebuch“. Innerhalb dieser Seite erstellen Sie eine normale Seite mit dem Namen „Formular“ und einen SysOrdner mit dem Namen „Eintrag“.
Auf der Seite „Gästebuch“ werden später die Gästebucheinträge angezeigt und kann durch klicken auf einen Link eine neuer Gästebucheintrag erzeugt werden.
Auf der Seite „Formular“ wird das Formular für neue Gästebucheinträge hinterlegt.
Der SysOrdner „Eintrag“ wird zur Ablage der Gästebucheinträge in der Datenbank verwendet.



11. Als erstes erstellen Sie auf der Seite „Gästebuch“ ein Inhaltselement „Text“.
Und Schreiben Sie den Text  „Ins Gästebuch eintragen“ im Reiter „Text“.




12. Zur Erstellung des Links markieren Sie den vorher eingegeben Text und klicken dann auf das Symbol zum Erstellen von Links
Wählen Sie im Pop-Up Fenster den Reiter „Seite“ und aus dem Ordnerbaum die Seite „Formular“ aus. Dieser Link kann für Neueintragungen in das Gästebuch verwendet werden.



13. Jetzt erstellen Sie zusätzlich auf der Seite Gästebuch ein Inhaltselement „Gästebuch“.
Wählen Sie bei was soll angezeigt werden „LIST“ und beim Ausgangspunkt den SysOrdner „Eintrag“ aus. Wählen Sie hier kein „Template“ aus, da dieses im TS Script festgelegt wurde.



14. Erstellen Sie auf der Seite „Formular“ ein Inhaltselement „Gästebuch“.
Wählen Sie bei was soll angezeigt werden „FORM“ und beim Ausgangspunkt den SysOrdner „Eintrag“ aus. Wählen Sie hier kein „Template“ aus, da dieses im TS Script festgelegt wurde.



15. Im Reiter „Formular“ im selben Inhaltselement wählen Sie Die Felder „Nachname“, „E-Mail“ und „Homepage“ aus. Klicken auf „E-Mail validieren“ und „Website“ überprüfen (wenn gewünscht). Als Zielseite nach dem Eintragen wählen Sie die Seite „Gästebuch“ aus. Als E-Mail Empfänger bei neuen Einträgen geben Sie den Website Administrator ein. Sie können jetzt noch anwählen ob der Benutzer eine E-Mail erhalten soll.



16. Die Extension ist jetzt Funktionsfähig.

12.12.9    Captcha im Gästebuch aktivieren

Wir wollen auch hier wieder für das Gästebuch die Extension „captcha“ für die Captcha Funktion verwenden. Dazu müssen wird den schon vorhanden Abschnitt im der HTML-Template Datei „guestbook_template.tmpl“, welcher für die Captcha Extension „sr_freecap“ eingefügt ist entfernen und durch den Text der im Kapitel „10.6.4 Captcha in Mailformplus aktivieren“ angeführt wir ersetzen.

 

Vorhandener Abschnitt im „guestbook_template.tmpl“ für „sr_freecap“:

 

<!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

                <tr>

                               <td valign="top">###FORM_CAPTCHA_RESPONSE###<br> ###SR_FREECAP_NOTICE### ###SR_FREECAP_CANT_READ###</td>

                               <td><input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" title="###SR_FREECAP_NOTICE###" value="" />

###SR_FREECAP_IMAGE###</td>

                </tr>

<!--###CAPTCHA_INSERT###-->

 

Neuer Abschnitt für Captcha mit Extension „captcha“:

<!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! -->

<tr>

<td valign="top">

                <span class="captcha-left">                                       

                               <span class="captcha-text">Eingabeüberprüfung: *</span>

                               <br/>

                               <span class="captcha-note">(um Mißbrauch dieser Funktion zu vermeiden geben Sie bitte die Buchstaben des Bildes in das nebenstehende Feld ein.)</span>

                </span> 

<td>

                ###CAPTCHA###

                <br />

                <input type="text" class="tx-guestbook-form-inputfield-med" size=30 name="captchafield" value="">

</td>                                     

</tr>

<!--###CAPTCHA_INSERT###-->

 

12.12.10Fehler in „ve_guestbook“

 

12.12.10.1 Fehler in der Listenansicht vom Gästebuch wird der Wochentag in englich ausgegeben

 

Sunday, 20-11-11 18:55

 

Abhilfe:

Sie müssen im Setup Bereich des Root Template die Sprachvariable „locale_all“ vor der Extension Definition festlegen:

config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE.utf-8

############ Gästebuch (ve_guestbook) ##################
# Konfiguration vom Gästebuch (ve_guestbook)
plugin.tx_veguestbook_pi1 {
templateFile = fileadmin/templates/html/ve_guestbook.tmpl
limit = 10

 

Hinweis  Die „locale_all“ ist abhängig vom Serverbetriebssystem richtig zu setzen unter Windows ist es "german", unter Linux/Apache kann es "de", "de_DE", "de_DE.utf-8" oder ähnlich heissen. Nur eine dieser Möglichkeit ist richtige für Ihren TYPO3 Server.

 

12.12.10.2 Fehler bei neuem Gästebucheintrag „Call to undefined method t3lib_div::GPvar()…“

 

Fatal error: Call to undefined method t3lib_div::GPvar() in /home/.sites/112/site415/web/typo3conf/ext/ve_guestbook/pi1/class.tx_veguestbook_pi1.php on line 666

 

Ursache:

Dieser Fehler tritt ab TYPO3 4.6.x auf. Bei dieser TYPO3 Version der „GPvar“ nicht mehr unterstützt. Man soll jetzt anstatt des „GPvar“ den Aufruf mit „t3lib_div::_GP()“ verwenden.

 

Abhilfe:

Im Moment gibt es noch kein Update der „ve_guestbook“ Extension. Sie müssen im Moment die Extension manuell bearbeiten. Öffnen Sie die Datei „class.tx_vegeustbook_pi.php“ und ändern Sie alle „GPvar“ Aufrufe auf „_GP“ mit Ersetzen um.

 

Beispiel alten „GPvar“ Eintrages:

$this->postvars = t3lib_div::GPvar ( 'tx_veguestbook_pi1' ) ? t3lib_div::GPvar ( 'tx_veguestbook_pi1' ) : array ();

 

Beispiel neuen „_GP“ Eintrages:

$this->postvars = t3lib_div::_GP( 'tx_veguestbook_pi1' ) ? t3lib_div::_GP( 'tx_veguestbook_pi1' ) : array ();

 

12.12.10.3 Fehler beim Formular neuer Gästebucheintrag wird anstatt der Feldnamen nur „Array“ angezeigt

 

 

Abhilfe:

Im Moment gibt es noch kein Update der „ve_guestbook“ Extension. Sie müssen im Moment die Extension manuell bearbeiten. Öffnen Sie die Datei „class.tx_vegeustbook_pi.php“ un führen sie folgende Änderung durch.

 

Beispiel des alten „$markerArray“ Eintrages (Zeile 633):

$markerArray ['###' . strtoupper ( $key ) . '###'] = $value;

 

 

Beispiel des neue „$markerArray“ Eintrages

$markerArray ['###' . strtoupper ( $key ) . '###'] = $value[0]['target'];

 

12.12.10.4 Fehler neuer Gästebucheintrag bei klicken auf „Eintragen“ (Submit) kommt „Class ‚user_fcmail‘ not found..“

 

Fatal error: Class 'user_fcmail' not found in /home/.sites/112/site415/web/t3lib/class.t3lib_div.php on line 4926

 

Abhilfe:

Folgende Änderung in „localconf.php“ durchgeführt und den „email with php_safemode“ ausgeschaltet:

 

$TYPO3_CONF_VARS['GFX']['TTFdpi'] = 96;

 

# email with php_safemode=on

#if (!function_exists('user_fcmail')) {  

#$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/utility/class.t3lib_utility_mail.php']['substituteMailDelivery'][] = 'user_fcmail';

 

#      function user_fcmail($parameters) {

#            $to                   = $parameters['to'];

#            $subject              = $parameters['subject'];

#            $messageBody          = $parameters['messageBody'];

#            $additionalHeaders    = $parameters['additionalHeaders'];

#            $additionalParameters = $parameters['additionalParameters'];

 

#            $success = mail($to, $subject, $messageBody, $additionalHeaders);

#            return $success;

#      }

#}

$TYPO3_CONF_VARS['EXT']['extList'] =

 

12.12.10.5 Fehler Formatierung vom Gästebuch bei neuen Eintrag

 

 

Abhilfe:

Kontrollieren Sie ob Sie die CSS Datei im TypoScript vom Root Template angegeben haben.

 

# Erstellung des PAGE Objektes und Übergabe der voher erstellten „temp“ Objekte

# des Dokumentes “temp.mainTemplate” und “temp.headTemplate”

page = PAGE

page {

    includeCSS {

                file1 = fileadmin/templates/css/ve_guestbook.css

                file1 {

                               media = screen

                }

                file2 = fileadmin/templates/css/air_gallery.css

                file2 {

                               media = screen

                }

                file3 = fileadmin/templates/css/rpw.css

                file3 {

                               media = screen

                }

                file4 = fileadmin/templates/css/print.css

                file4 {

                               media = print

                               title = Druck-Stylesheet 

                }

    }

}

 

 


12.12.10.6 Fehler bei Sprachumschalt auf English bei neuen Gästebucheintrag

 

 

 

Abhilfe:

Es dürfte sich hier um einen Fehler in den „Cache“ Dateien gehandelt haben. Nach nochmaligen löschen alle „Cache“ und der „temp_CACHE_*“ Dateien funktionierte plötzlich die neue Gästebuchseite einwandfrei.

 


12.13                   Extension News (tt_news)

Dies ist eine der meistverwendeten Extension unter TYPO3 zur Anzeige von Informationen.

 

12.13.1    Was macht diese Extension?

 

·         Extension zur Anzeige und Verwaltung von News Nachrichten.

·         Arten von Nachrichten: Standard-News-Artikel, externe Links und Links auf internen Seiten.

·         Volle Mehrsprachigkeits-(Multilanguage) Unterstützung mit TYPO3 seit Version 3.7.0.

·         News-Artikel können zu jedem anderen und / oder der internen Seiten. Wenn zwei News-Artikel sind, der Link zu der Quelle Artikel automatisch eingefügt.

·         Der Blick auf das komplette News-Artikel (Einzel-Ansicht) können auf mehrere Seiten aufgeteilt. Pagebreaks eingefügt werden können manuell durch eine benutzerdefinierte "pagebreak Token" oder nach einer bestimmten Anzahl von Wörtern.

·         Alle Arten von Mediafiles können News-Artikel zugeordnet werden.

·         Sehr flexible Nachrichten-Inhaltselement mit den folgenden Funktionen: Liste, Neuheiten, Archiv-Menü, Single-Ansicht, Suche, ein Menü aus verschachtelten Kategorien (CATMENU) und eine spezielle Art der Einzel-Ansicht: die "Preview-Version".

·         Das Erscheinungsbild der News-Plugin auf der Website kann leicht geändert werden, indem Sie die HTML-Vorlage verwenden.

·         CSS-basierte HTML-Templates enthalten.

·         News Kategorien können den News zugeteilt werden (Mehrfachauswahl möglich). Kategorien können hierarchisch angelegt werden. In den News kann selektiert werden ob die zugteilte Kategorie oder die in der Hierarchie höhere Kategorie angezeigt wird.

·         Neu in Version 3.0.1: Wenn die Extension „xajax“ installiert ist, können die Kategorie Bäume im Backend erweitert oder komprimiert werden. Bei einem großen Kategoriebaum ist dies sehr nützlich.

·         Neu in Version 5.0.1: "tt_news Kategorie-Manager" ein Backend-Modul zur Verwaltung von News-Kategorien (unter Web-> Info). Es zeigt den kompletten Kategoriebaum - natürlich erweiterbar und komprimierbar - und bietet Drag-and-Drop zum Verschieben und Kopieren von Nachrichten Kategorien.

·         Kategorie-Bilder oder Kategorie-Bezeichnungen können als Link zu einer speziellen Seite oder als Kategorieauswahl verwendet werden.

·         Die Einzelansicht der News kann eine Liste der News anzeigen die derselben Kategorie zugeteilt wurden.

·         In den Backend Kategorien kann die Zugriffsberechtigung für die News festgelegt werden. Eine Liste der erlaubten Kategorien kann einer Benutzergruppe zugeteilt werden. Wenn ein Benutzer versucht eine News zu bearbeiten die nicht in der Liste der Kategorien vorhanden ist, so kann er diese Änderungen nicht abspeichern.

·         Eine interne Suchfunktion mit einen konfigurierbaren Suchfeld (kann mit einer Kategorieauswahl kombiniert werden das auf bestimmte Kategorien filtert).

·         „Änderungssperre“: Durch Aktivieren des Kontrollkästchen "Beschränken der Bearbeitung von Nicht-Admins" („Restrict editing by non-Admins“) kann die die Bearbeitung von Newseinträgen für Nicht-Admin-Benutzer gesperrt werden.

·         Automatische Archivierung von News, wenn eine festgelegte Anzahl von Tagen vergangen ist. Diese News werden dann automatisch in einer Archivansicht angezeigt. Es ist nicht notwendig das Archivdatum manuell einzugeben.

·         Unterstützung für die „Caching“ und „Indexing“ Funktionen. Auch wenn das „Caching“ eingeschaltet ist werden die News von der Extension „Indexed Search“ indiziert.

·         Unterstützt die direkte Vorschau mit dem „Save & View“ Button in einen News Datensatz (im Backend) wird direkt die Einzelansicht der News auf der Webseite geöffnet (siehe Seiten TSConfig).

·         Verschiedene Möglichkeiten um Benutzerdefinierte Skripte für die Ausgaben zu verwenden.

·         Unterstützt den Export in die folgenden XML-Feed-Formate: RSS 0.91, RSS 2, RDF Atom 0.3 und Atom 1.0.

·         Unterstützt Versionierung für Nachrichten Aufzeichnungen (TYPO3> 3.7.0 und MySQL 4.x erforderlich). "Versionierung" Vorschau "wird mit einem speziellen Modus des tt_news Content Elements (VERSION_PREVIEW), die zur Verfügung stehen, wenn die Endung"-Version "installiert ist.

·         "Kontext-sensitive Hilfe" (CSH) für alle Bereiche in der tt_news und tt_news_cat Backend Formen.

·         Unterstützung für die Arbeitsbereiche (TYPO3 4.x erforderlich) Kompatibilität.

 

12.13.2    Installation von tt_news

 

1.    Holen Sie sich die Extension „tt_news“ V3.0.1 vom Online-Repository.

2.    Einstellungen der „tt_news“ Extension bei der Installation:


(Ausschnitt)

3.    Wenn die Extension installiert ist, kopieren Sie die original HTML Template Datei „tt_news_v2_template.html“ aus dem Verzeichnis „type3conf/ext/tt_news/pi/“(je nach Installation) in das Verzeichnis „fileadmin/templates/html“ mit dem Namen „tt_news_template.tmpl“.

4.    Danach kopieren Sie den Inhalt der original CSS Datei „tt_news_V2_styles.css“ aus dem Verzeichnis „type3conf/ext/tt_news/res/“ in das CSS Verzeichnis mit dem Namen „fileadmin/templates/css/tt_news_styles.css“. Ändern Sie die CSS-Definitionen nach Ihren Wünschen ab.

5.    Als nächstes beginnen wir mit der Anlage der Seiten. Legen Sie zuerst eine Seite „News“  an. In dieser Seite legen Sie folgende Unterseiten mit Typ „Standard“ an:
Einzelansicht
Suche
Archiv
ArchivListe
Newseintrag à Diese Seite als Typ „SysOrdner“ und unter Optionen „Enthält Plug-In“: „News“ auswählen.

6.    Bei jeder dieser Unterseiten wählen Sie „Im Menü verbergen“ aus.



7.    Das ganze sollte dann so aussehen:



8.    Jetzt muss in die einzelnen Seiten ein Inhaltselement als Plugin eingefügt werden. Klicken sie zuerst auf die Hauptseite „News“ und legen Sie einen neuen Seiteinhalt „Seiteninhalt anlegen“ an. Wählen Sie unter den Plugins „Nachrichten“ aus.



9.    Im Seiteninhalt klicken Sie auf den Reiter „Plug-In“. Unter den Erweiterungsoptionen „Allgemeine Einstellungen“ klicken Sie bei „Ansicht“ das Objekt „LIST“ an. Gehen Sie noch zur Auswahl „Archiveinstellungen (für LIST Ansicht)“ und wählen Sie „Nur nicht-archivierte“ aus. Speichern und schließen vom Record.

Hinweis  Wenn Sie am Ende der Newseinträge auch die Auswahl für die Archive der Newsnachrichten anzeigen wollen können Sie zusätzlich noch das Objekt „AMENU“ nach dem „LIST“ auswählen.



10. Als nächstes im Inhaltselement auf den Reiter „Template“ klicken und den Eintrag unter „Template file reference“ entfernen.

Hinweis  Im Reiter „Template“ wird standardmäßig das Extension Template eingetragen „EXT:tt_news/pi/tt_news_v2_template.html“. Wählen Sie hier Ihre eigene HTML Template Datei aus oder lassen Sie das Feld leer wenn Sie die Template Datei über TS im Setup Bereich festlegen. Beachten Sie, dass die Einträge hier, die Einträge vom TS Setup Bereich überschreiben.



11. Unter dem Reiter „Sonstige Einstellungen“ können die Seite für die Einzelansicht von Newseinträgen und die Rücksprungseite definiert werden. Da wir diese auch über TS im Setup Bereich definieren, führen wird hier keine Veränderung durch.

12. Gehen Sie jetzt auf die Seite „Einzelansicht“. Legen Sie wieder einen Seiteninhalt „Plugin einfügen“ und als Erweiterung „Nachrichten“ an. Klicken Sie hier unter dem Reiter „Allgemeine Einstellungen“ bei „Ansicht“ auf das Objekt „SINGLE“. Speichern schließen.



13. Gehen Sie jetzt zu der Seite „Suche“. Wieder „Plugin einfügen“ und „Nachrichten“ auswählen.
Bei „Ansicht wählen wir hier das Objekt „SEARCH“. Speichern schließen.

14. Bei der Seite „Archive“ wird als Objekt „AMENU“ ausgewählt.

15. Jetzt gehen wir auf die Seite „ArchiveListe“ und wählen als Objekt „LIST“. Bei der Auswahl „Archiveinstellungen (für LIST Ansicht)“ wählen wir „Nur archivierte“ aus.



16. Wir möchten unser News System nicht über das Root-Template der Website verwalten. Damit haben wir die Möglichkeit das News-Plugin innerhalb unserer Website nochmals mit geänderten Einstellungen zu verwenden.
Zur Einrichtung eines statischen Untertemplates (Subtemplates) für unseren News Bereich klicken wir auf die Seite „Aktuelle Meldungen“. Dann klicken wir auf „Neu“ und wählen „Template“ aus. Als „Template Titel“ geben wir „define.tt_news“ ein.



Hinweis  Wenn Sie die News Anzeige auch außerhalb der Seite „Aktuelle Meldungen“ verwenden möchten, dürfen Sie das Untertemplate nicht im Haupttemplate (Root-Template) mit „Include basis template“ einfügen. Fügen Sie im Haupttemplate anstatt dessen unter „Include static (from extension)“ das „CSS-base tmpl (tt_news)“ ein (nur dieses wenn Sie ein eigenes CSS verwenden).


17. Im „Constants“-Bereich des Haupt- oder Untertemplates wird folgendes eingefügt:

 

# Page ID News: Die ID der Seite wo die News drin sind (Systemordner)

pid_list = id1

# Page ID Singlenews: Die ID der Seite für die Einzelansicht (SINGLE)

singlePid = id2

# Page ID Archive: Die ID der Seite wo das Archive drin (Seite „ArchivListe“)

archiveTypoLink = id3

 

Ersetzen Sie die Texte „id1“, id2“ und „id3“ durch Ihre vorher angelegte Seiten IDs.

 

18. Im „Setup“-Bereich des Untertemplates wird zur Aktivierung folgendes eingefügt:

#Pfad zum eigenen Template

plugin.tt_news.file.templateFile = fileadmin/templates/html/tt_news_template.tmpl

#Pfad zur eigenen CSS Datei

page.includeCSS.file20 = fileadmin/templates/css/tt_news_styles.css

# Variable dontUsebackPID wird auf 0 gesetzt

plugin.tt_news.dontUseBackPid = 0

# Variable pid_list wird leer gemacht

plugin.tt_news.pid_list >

# PID wird über eine Konstante festgelegt

plugin.tt_news.pid_list = {$pid_list}

# Rekursiv, wenn die News in Unterordner sind

plugin.tt_news.recursive >

plugin.tt_news.recursive = 1

# UID der Seite Singleview

plugin.tt_news.singlePid = {$singlePid}

# Archive Aktivieren

# UID der Archiveseite

plugin.tt_news {

   archive = 1

   datetimeDaysToArchive = 30

   enableArchiveDate = 1

   archiveTypoLink.parameter = {$archiveTypoLink}

   reverseAMenu = 1

}

# Formatiere Datum Ausgaben der News 

plugin.tt_news.displayList.date_stdWrap.strftime = %A %d. %B %Y

# Formatiere Alter Ausgabe der News

plugin.tt_news.displayList.age_stdWrap.age = Minuten| Stunden| Tage| Jahr/e

plugin.tt_news.displaySingle.age_stdWrap.age = Minuten| Stunden| Tage| Jahr/e

 

19. Auswahl des statischen Templates im Haupttemplate (Root-Template) mit dem Standardnamen „NEW SITE“. Wählen Sie unter „Include Static (from Extension)“ das Objekte „CSS-based tmpl (tt_news)“ aus. Speichern und schließen.



Hinweis  Das Objekt „default CSS-styles (tt_news)“ würde nur benötigt werden wenn Sie keine eigene CSS Definition verwenden. Das statische Template „News-feed (RSS,RDF,ATOM) (tt_news) wird später beschrieben.

20. Jetzt wieder zur Seite „News“ wechseln und unter „Seiteneigenschaften bearbeiten“ wird bei „Allgemeine Datensatzsammlung“ der SysOrdner „Newseintrag“ eingefügt.



21. Sie können jetzt die Template (fileadmin/templates/html/tt_news_template.html) und die CSS Datei (fileadmin/templates/css/tt_news_styles.css) noch Ihren Bedürfnissen anpassen, oder die Anpassungen werden im „Constants“ oder „Setup“-Bereich vornehmen.

 

12.13.3    Update der Extension tt_news

Wenn im „Extension Manager“ die Extension „tt_news“ für ein Update ausgewählt wird erscheint unter TYPO3 höher V4.3.99 folgender Meldung.

 

 

Klicken Sie auf „Ignore this version requirement“ und dann auf „Tray again“.

 

12.13.4    Anpassungen der News Extension

 

Erweiterte Einstellungen im „Constants“-Bereich welche durchgeführt werden können:

 

plugin.tt_news.color1 = #EEEEEE
plugin.tt_news.color2 = #EEEEEE
plugin.tt_news.color3 = #EEEEEE
plugin.tt_news.color4 = white
plugin.tt_news.wrap1 = <font face="Arial" size="2" color="black"> | </font>
plugin.tt_news.catTextMode = 1
plugin.tt_news.catImageMode = 1
plugin.tt_news.listMaxW = 200
plugin.tt_news.singleMaxW = 200
plugin.tt_news.latestMaxW = 200
plugin.tt_news.wrap2 = <font face="Arial" size="2" color="black"> | </font>
plugin.tt_news.wrap3 = <font face="Arial" size="2" color="white"> <strong> | </strong></font>

 

 

Beispiel für Anpassungen im Setup Bereich für andere Schrift und Größe der News:

 

# Formatiere Single View Titel

plugin.tt_news.displaySingle.title_stdWrap.wrap = <font face="Arial, Helvetica, sans-serif" size="3" color="#000000"><strong>|</strong></font>

# Formatiere Single View Inhaltstext

plugin.tt_news.displaySingle.content_stdWrap.wrap = <font face="Arial, Helvetica, sans-serif" size="2" color="#000000">|</font>

# Formatiere Single View Datum auf Kurzformat

plugin.tt_news.displaySingle.date_stdWrap.strftime = %d.%m.%y

# Formatiere Single View Subheader

plugin.tt_news.displaySingle.subheader_stdWrap.wrap = <strong>|</strong>

 

Andere mögliche Einstellungen können Sie sich “TypoScript Object Browser” unter “tt_news” ansehen.

 

12.13.5    Vorlage CSS Datei für tt_news

 

 

/*-----------------------------------  clearer  -----------------------------------*/

/* prevent floated images from overlapping the div-containers they are wrapped in  */

 

.news-list-container HR.clearer, .news-single-item HR.clearer, .news-latest-container HR.clearer{

                clear:right;

                height:1px;

                color: #BFBBD0;

                border:1px solid #BFBBD0; /* Farbe der Trennlinie zwischen den Newseinträgen und Zurück Link */

}

.news-latest-container HR.clearer {

                clear:left;

}

 

/*-----------------------------------  tt_news LATEST view  -----------------------------------*/

 

.news-latest-container {

                border:1px solid #BFBBD0; /* Farbe des äußeren Rahmens bei News LATEST Anzeige */

                background-color:#BBE53A; /* Farbe des Hintergrundes bei News LATEST Anzeige */

}

 

.news-latest-container H2,.news-latest-gotoarchive {

                color:#fff;

                padding:3px;

                margin:3px;

                border:1px solid #BFBBD0; /* Farbe des Rahmens der Überschrift bei LATEST Anzeige */

                background-color:#fff; /* Hintergrundfarbe der Überschrift bei der LATEST Anzeige */

}

 

.news-latest-gotoarchive {

                font-weight:bold;

                margin-top:5px;

}

.news-latest-gotoarchive A:LINK, .news-latest-gotoarchive A:VISITED, .news-latest-gotoarchive A:HOVER {

                color:#fff; /* Durch die Farbe #fff wird die Link Anzeige für Archiv ausgeblendet */

}

.news-latest-gotoarchive A {

                color:#fff; /* Durch die Farbe #fff wird die Link Anzeige für Archiv ausgeblendet */

}

.news-latest-item {

                /* IE hack */

                height: 1%;

                line-height: 1.3;

                /* IE hack end */

                height: auto !important;      

                padding:3px;

                margin:3px;

                border:1px solid #BFBBD0; /* Farbe des Rahmens vom Newseinträgen bei der LATEST Anzeige */

                background-color:#fff; /* Hintergrundfarbe der Newseinträge bei der LATEST Anzeige */

}

 

.news-latest-item IMG {

                margin-bottom:5px;

                margin-right:5px;

                border:1px solid #BFBBD0;

                float:left;

}

.news-latest-category IMG {

                float: none;

                border:none;

                margin:0px;

}

.news-latest-date,.news-latest-morelink,.news-latest-category {

                font-size:9px;

}

 

.news-latest-morelink {

                height:12px;

}

 

.news-latest-morelink A {

                float:right;

}

 

 

/*--------------------------------- tt_news LIST view  -----------------------------------*/

.news-list-container {

                border:1px solid #BFBBD0; /* Farbe des äußeren Rahmens bei der News LIST Anzeige */

                background-color:#fff; /* Farbe des Hintergrudne bei der News LIST Anzeige */

}

 

.news-list-item {

                /* IE hack */

                height: 1%;

                line-height: 1.3;

                /* IE hack end */

                height: auto !important;

                padding:3px;

                margin:3px;

                border:1px solid #BFBBD0; /* Farbe des Rahmens vom Newseinträgen bei der LIST Anzeige */

                background-color:#fff; /* Hintergrundfarbe der Newseinträge bei der LIST Anzeige */

}

               

.news-search-form {

                padding:3px;

                margin-bottom:5px;

                border:1px solid #BFBBD0;

                background-color:#fff;

}

.news-search-emptyMsg{

                margin:0px;

}

.news-search-form FORM {

                margin:0px;

}

.news-list-container H2 {

                color: #333; /* Farbe der Überschriften von Newseinträgen bei der News LIST Anzeige */

                margin-bottom: 5px;

                padding: 2px;

                border-bottom: 1px solid #BFBBD0; /* Farbe des Überschriftrahmens bei der News LIST Anzeige */

                background-color: #BFBBD0; /* Farbe des Hintergrundes der Überschrift bei der News LIST Anzeige */

}

.news-list-container H3 A:LINK,.news-list-container H3 A:VISITED,.news-list-container H3 A:HOVER {

                color:#fff;

                padding-left:2px;

}

.news-list-container H3 A {

                color:#fff;

}

.news-list-container P {

                padding-left:3px;

}

.news-list-date {

                float: right;

                padding: 1px 1px;

                color: #333; /* Schriftfarbe der Datumsanzeige bei der News LIST Anzeige */

                width: 180px;

                text-align: right;

                height: 20px;

                font-size: 13px;

                font-weight: normal;

                }

 

.news-list-imgcaption {

                float: right;

                padding-top:3px;

                padding-right:3px;

                font-size: 9px;

}

 

.news-list-container IMG {

                float: right;

                border:1px solid #BFBBD0;

                margin-bottom:5px;

                margin-right:2px;

                margin-left:5px;

}

.news-list-category IMG {

                float: none;

                border:none;

                margin:0px;

}

 

.news-list-morelink,.news-list-category {

                font-size:11px;

                margin-left:3px;

}

.news-list-morelink  {

                margin-bottom:3px;

}

.news-list-browse {

                text-align: center;

}

 

                /*---------------------------------  tt_news Page-Browser ---------------------------------*/

.tx-ttnews-browsebox {

                margin:3px;

                border:1px solid #BFBBD0;

                padding:3px;

                background-color:#fff;

}

.tx-ttnews-browsebox TD {

                font-size: 10px;

}

.tx-ttnews-browsebox-strong, .tx-ttnews-browsebox-SCell {

                font-weight: bold;

}

.tx-ttnews-browsebox-SCell P,.tx-ttnews-browsebox TD P{

                margin:0px;

}

 

.tx-ttnews-browsebox-SCell {

                background-color: #BBE53A;

                border:1px solid #BFBBD0;

}

.news-search-emptyMsg {

                font-size: 11px;

                margin-left: 10px;

}

                /*--------------------------------- tt_news SINGLE view  ---------------------------------*/

.news-single-item {

  height: auto !important;    

                padding:5px;

                margin-bottom:5px;

                border:1px solid #BFBBD0; /* Farbe des Rahmens vom Newseinträgen bei der SINGLE Anzeige */

                background-color:#fff; /* Farbe des Hintergrundes der Newseinträge bei der SINGLE Anzeige */

 

}

.news-single-item H1 {

                font-size: 14px;

                font-weight:bold;

                color: #333; /* Farbe der Überschrift von Newseinträgen bei der SINGLE Anzeige */

                margin-top: 5px; /* Abstand der Überschrift der Newseinträgen bei der SINGLE Anzeige */    

                margin-bottom: 0px;

                background-color: #BFBBD0; /* Farbe der Überschrift von Newseinträgen bei der SINGLE Anzeige */

}

.news-single-item H3 {

                margin-bottom: 15px;

}

 

.news-single-img {

                float: right;

                margin-left:5px;

}

 

.news-single-imgcaption {

                padding:3px;

                clear:both;

}

 

.news-single-category {

                float: right;

}

.news-single-backlink, .news-single-backlink a {

                font-weight: bold;

                font-size: 11px;

                margin-bottom: 15px;

                margin-top: 10px;

}

.news-single-timedata {

                float: right;

}

.news-single-timedata, .news-single-author,.news-single-imgcaption {

                font-size: 9px;

}

.news-single-author {

                padding-bottom: 3px;

}

.news-single-additional-info {

                background-color: #fff;

/*             clear: both; */

                margin-top: 15px;

                border: 1px solid #BFBBD0;

                padding:3px;

                padding-bottom:0px;

}

.news-single-related,.news-single-files,.news-single-links  {

                border: 1px solid #BFBBD0;

                margin:0px;

                margin-bottom: 3px;

                padding:3px;

                background-color:#fff;

}

 

.news-single-related DD, .news-single-links DD, .news-single-files DD {

                margin-left:20px;

}

 

.news-single-related DT, .news-single-links DT, .news-single-files DT {

                font-weight: bold;

                font-size: 11px;

                margin-left:5px;

                width:90%;

}

 

/*--------------------------------- tt_news Archivemenu (AMENU) --------------------------------- */

.news-amenu-container {

                margin-top:10px;

                padding:3px;

                border:1px solid #333;

                background-color:#BBE53A;

}

.news-amenu-container LI {

                padding-bottom:1px;

}

.news-amenu-container UL {

                padding:3px;

                margin-top:5px;

                margin-left:0px;

                margin-bottom:0px;

                border:1px solid #BFBBD0;

                background-color:#fff;

                list-style-type: none;

}

.news-amenu-container H2 {

                color:#fff;

                padding:3px;

                border:1px solid #BFBBD0;

                background-color:#fff;

}

.news-amenu-item-year {

                font-weight: bold;

                border: 1px solid #BFBBD0;

                padding: 2px;

                background-color: #fff;

                color:#fff;

}

 

/*--------------------------------- tt_news Categorymenu (CATMENU) --------------------------------- */

 

.news-catmenu  {

                padding:5px;

                margin:10px 0px 10px 10px;

                border:1px solid #BFBBD0;

                background-color:#fff;

}

.news-catmenu-header  {

                font-size:11px;

                font-weight:bold;

}

.news-catmenu DIV {

                font-size:10px;

                white-space: nowrap;

}

.news-catmenu DIV img {

                margin:0px;

                padding:0px;

                vertical-align: middle;

}

.news-catmenu-ACT {

                font-weight:bold;

}

 

/*  Styles for catmenu mode "nestedWraps" */

.level0 {

                background-color:#fff;

}

.level1 {

                padding-left:10px;

                background-color:#eee;

}

.level2 {

                padding-left:10px;

                background-color:#ddd;

}

.level3 {

                padding-left:10px;

                background-color:#ccc;

}

.level4 {

                padding-left:10px;

                background-color:#bbb;

}

 

 

12.13.6    Anzeige des Archiv Menüs verändern für Monatsgruppen- oder Jahresanzeige

 

Für die Anzeige von Monatsgruppen im Archiv-Menü geben Sie folgendes im Setup Bereich vom Archiv (News) Template ein:

plugin.tt_news { 

  …

 # Detailanzeige der Archive verändern

   datetimeDaysToArchive = 31

   archiveMode = quarter

   archiveTitleCObject >

   archiveTitleCObject = COA

   archiveTitleCObject {

     10 = TEXT

     10.field = start

     10.strftime = %B

     15 = TEXT

     15.value =  -

     20 = TEXT

     20.field = stop

     20.strftime = %B %Y

  }

}

 

Wenn Sie die archivierten News nur nach Jahren anzeigen wollen geben Sie folgendes im Setup Bereich vom Archiv (News) Template ein:

plugin.tt_news { 

  …

   # Detailanzeige der Archive verändern

   datetimeDaysToArchive = 369

   archiveMode = year

   archiveTitleCObject >

   archiveTitleCObject = COA

   archiveTitleCObject {

     10 = TEXT

     10.field = start

     10.strftime = %B

     15 = TEXT

     15.value =  -

     20 = TEXT

     20.field = stop

     20.strftime = %B %Y

  }

}

 

12.13.7    Einschränkung des Datensatztyps auf „News“

 

Wenn Sie wollen das im Ordner „News“ in welchen die eigentlichen News Dokumente angezeigt werden nur mehr der Dokumententyp „News“ als einzige mögliche Auswahl angeboten wird, können Sie im „TSConfig“ diese Seite folgende Einstellung vornehmen.

 

# Erlaubt ab dieser Seite nur mehr die Erstellung von tt_news Datensätzen

mod.web_list_allowedNewTables = tt_news, tt_news_cat

 

12.13.8    Einstellung von tt_news für RealURL

Wenn Sie die Extension „realurl“ gelichzeitig mit „tt_news“ verwenden sollten Sie noch folgende Anpassungen vornhemen. Wenn Sie Autokonfiguration (Enable automatic configuration“ von RealURL verwenden sollten Sie folgende zeilen in den Setup Bereich des Root-Templates eintragen:

 

# RealURL-Anpassungen für tt_news

#################################

plugin.tt_news.useHRDates = 1

plugin.tt_news.useHRDatesSingle = 1

plugin.tt_news.useHRDatesSingleWithoutDay = 1

plugin.tt_news.dontUseBackPid = 1

 

Wenn Sie einen Eignen RealURL Konfigurationsdatei verwenden, können Sie als Vorlage der Einstellungen für RealURL die Beispieldatei „realURL_example_setup.txt“ aus dem Verzeichnis „typo3conf/ext/tt_news/res/“ verwenden. Kopieren Sie den Inhalt in eine eigene Datei und passen Sie die Einstellungen an Ihre Konfiguration an. Kopieren Sie das Ergebnis dann in die Datei „realurl_conf.php“ im Verzeichnis „typo3conf“. Wenn in der Datei schon Einstellungen für RealURL vorhanden sind, dürfen Sie nur Ihre Änderungen einfügen, damit die vorhandene Konfiguration nicht zu zerstört wird.

 

$TYPO3_CONF_VARS['EXTCONF']['realurl'] =
array(
                ‘_DEFAULT’ => array(

                               ‘postVarSets’ => array(
                                               ‘_DEFAULT’ => array(

                                                               ‘blog-post’ => array(

                                                               // news archive parameters

                                                              ‘archive’ => array(

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[year]‘ ,

                                                                              ),

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[month]‘ ,

                                                                                              ‘valueMap’ => array(

                                                                                                              ‘january’ => ‘01,

                                                                                                              ‘february’ => ‘02,

                                                                                                              ‘march’ => ‘03,

                                                                                                              ‘april’ => ‘04,

                                                                                                              ‘may’ => ‘05,

                                                                                                              ‘june’ => ‘06,

                                                                                                              ‘july’ => ‘07,

                                                                                                              ‘august’ => ‘08,

                                                                                                              ’september’ => ‘09,

                                                                                                              ‘october’ => ‘10,

                                                                                                              ‘november’ => ‘11,

                                                                                                              ‘december’ => ‘12,

                                                                                              )

                                                                              ),

                                                               ),

                                                               // news pagebrowser

                                                               ‘browse’ => array(

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[pointer]‘,

                                                                              ),

                                                               ),

                                                               // news categories

                                                               ’select_category’ => array (

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[cat]‘,

                                                                              ),

                                                               ),

                                                               // news articles and searchwords

                                                               ‘article’ => array(

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[tt_news]‘,

                                                                                              ‘lookUpTable’ => array(

                                                                                                              ‘table’ => ‘tt_news’,

                                                                                                              ‘id_field’ => ‘uid’,

                                                                                                              ‘alias_field’ => ‘title’,

                                                                                                              ‘addWhereClause’ => ‘ AND NOT deleted’,

                                                                                                              ‘useUniqueCache’ => 1,

                                                                                                              ‘useUniqueCache_conf’ => array(

                                                                                                                             ’strtolower’ => 1,

                                                                                                                             ’spaceCharacter’ => ‘-’,

                                                                                                              ),

                                                                                              ),

                                                                              ),

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[backPid]‘,

                                                                              ),

                                                                              array(

                                                                                              ‘GETvar’ => ‘tx_ttnews[swords]‘,

                                                                              ),

                                                               ),

                                               ),

                               ),

                ),

);

 

 


12.13.9    Fehler in News Extension (tt_news)

 

12.13.9.1    Fehler bei „Zurück zu:“ Link kommt „Keine news_id übergeben.“

 

Nach einen Update auf eine neue „tt_news“ Version kommt jetzt beim Link „Zurück zu:“ die Fehlermeldung „Keine news_id übergeben.“

 

Abhilfe:

Kontrollieren Sie Konfiguration der „tt_news“ Extension im Setup Bereich des Root Templates. Es sollte dort der Eintrag „plugin.tt_news.dontUseBackPid = 0“ vorhanden sein, wenn Sie keine spezielle Rücksprungseite verwenden.

 

12.13.9.2    Fehler der Text „[mehr]“ wird nicht als Link angezeigt

 

Ursache:

Die Seite der „Einzelansicht“ wurde nicht mit Typ „Standard“ sondern als „SysOrdner“ definiert. Der Link auf „[mehr]“ wird nur gesetzt, wenn die Seite mit dem Inhaltselement News „SINGLE“ den Typ „Standard“ besitzt.

 

Abhilfe:

Ändern Sie den Typ der Seite „Einzelansicht“ auf „Standard“.

12.13.9.3    Fehler beim Text „<_Zurück zu: New“ wird unschön angezeigt

Der Link zur Rückkehr zu der News Liste wird sehr unschön angezeigt, daher sollen die Zeichen „<_“ entfernt werden.

Abhilfe:
Installierren Sie eine neuere Version von „tt_news“.

 

12.13.9.4    Fehler Datum in der „Latest“ Ansicht der News wird mit „of“ angezeigt

 

 

Abhilfe:

Im “TypoScript Object Browser” finden Sie unter „tt_news“-„displayLatest“-„date_stdWrap“-„strftime“ den Eintrag „%A %d. of %B %Y“. Entfernen Sie den Eintrag „of“.

Sie können diese Einstellungen auch im Setup Bereich ändern durch:

„plugin.tt_news.displayLatest.date_stdWrap.strftime=%A %d. %B %Y”

 

12.13.9.5    Fehler bei Anzeige von News wird nach „Alter:“ die Einheit „days“ angezeigt

 

 

Abhilfe:

Schreiben Sie folgende Zeilen in den Setup Bereich Ihres Templates

 

plugin.tt_news.displayList.age_stdWrap.age = Minuten| Stunden| Tage| Jahr/e
plugin.tt_news.displaySingle.age_stdWrap.age = Minuten| Stunden| Tage| Jahr/e

 

 

12.13.9.6    Fehler bei Anzeige von News wird „Displaying results…out of…“ angezeigt


 

Alles andere unter News wird in Deutsch angezeigt nur der die Pagebrowser Meldung kommt in Englisch.

 

Abhilfe:

Diese Ausgabe im Pagebrowser kommt nicht aus tt_news sondern aus TYPO3 direkt. Dafür wurde in TYPO3 keine Übersetzung eingebaut. Als Workaround kann folgendes in das den Setup Bereich des Template eingetragen werden.

 

plugin.tt_news._LOCAL_LANG.de.pi_list_browseresults_displays = News ###SPAN_BEGIN###%s bis %s von %s</span>

 

12.13.9.7    Fehler bei Anzeige von News Categorie wird „Select a category“ angezeigt

 

 

Abhilfe:

Dies kann man leider nur im Code der Extension ändern (auf alle Fälle bis zur Version 2.2.24). Öffnen Sie die Datei „locallang.php“ aus dem Verzeichnis „/typo3conf/ext/tt_news/pi/“ und fügen Sie innerhalb des Bereiches „de“ folgende Zeile hinzu:

 

‚catmenuHeader’ => ‚Wählen Sie eine Kategorie’,

 

 

12.13.9.8    Fehler bei Druckversion mit plugin.alt.print und Einzelansicht

Es wird in der Druckansicht als Drucktext „keine News-ID übergeben“ angezeigt (oder in Englisch „no news_id given“).

 

Abhilfe:

Siehe Kapitel Einrichtung von Druckversion mit „plugin.alt.print“

 

 

12.13.9.9    Fehler bei Druckversion mit Plugin make_printlink und Einzelansicht

Es wird in der Druckansicht als Drucktext „keine News-ID übergeben“ angezeigt (oder in Englisch „no news_id given“).

 

Abhilfe:

Lösung: Print Link (extkey: as_printlink) verwenden und dann funktioniert es

 

 

12.13.9.10 Fehler im Backend bei Bearbeitung von Newseinträgen

 

Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to allocate 16 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 146

 

oder

 

Fatal error: Allowed memory size of 26214400 bytes exhausted (tried to allocate 16 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 146

 

Ursache:

Wenn Sie diese Fehlermeldung auf eine Server eines Provider erhalten, so hat dieser in der PHP Konfiguration die erlaubte Speicherauslastung für PHP auf „20971520“ oder „26214400“ Bytes eingeschränkt.

 

Abhilfe:

Auf einem lokalen Server erhöhen sie einfach in der „localconf.php“ das Memory Limit:

 

ini_set("memory_limit",'64M');

 

Bei einem Provider Server müssen Sie die Erweiterung des Speicherlimits beim Provider beantragen.



12.13.9.11 Fehler nach Update auf TYPO3 V4.2.6 kommt bei News „Cannot re-assign $this in“

 

Fatal error: Cannot re-assign $this in /srv/www/htdocs/cms/typo3conf/ext/static_info_tables/class.tx_staticinfotables_syslanguage.php on line 41

 

und im TYPO3 Install-Tool unter „Database Analyser“ mit „Compare with $TCA“ kommt

 

 

 

Ursache:

Im TYPO3 Install-Tool unter „All Configuration“ die Option „debugSQL“ aktivieren. Wenn danach unter Liste auf den SysOrdner für News geklickt wird erscheint folgendes.

 

caller

t3lib_DB::exec_SELECTquery

ERROR

Table 'cms.static_taxes' doesn't exist

lastBuiltQuery

SELECT count(*)
FROM static_taxes
WHERE
pid=49 AND static_taxes.deleted=0

debug_backtrace

SC_db_list->main#451 // recordList->generateList#295 // localRecordList->getTable#268 // recordList->setTotalItems#397 // t3lib_DB->exec_SELECTquery#490 // t3lib_DB->debug#234


Abhilfe:

Wenn Sie zusätzlich vorher noch die Entfernen Sie die Extension „sr_static_info“ indem Sie auf die grüne Kugel klicken.

 

 

Klicken Sie dann auf „Remove extension“ um diese zu entfernen

 

 

12.13.9.12 Fehler im „Database Analyser“ mit  „Compare with $TCA“

 

 

Ursache:

Die tt_products_articles_language ist in tt_products 2.6.x noch nicht implementiert und deshalb auch fehlerhaft.

 

Abhilfe:

Es muss so geändert werden in der Datei „ext_tables.sql“ auf:

#

# Table structure for table 'tt_products_articles_language'

#

CREATE TABLE tt_products_articles_language (

                „article_uid int(11) DEFAULT '0' NOT NULL,“

);


Weitere Änderungen des Feldes „uid_article“ auf „article_uid“ in den Dateien:
„locallang_db.xml“
„ext_tables.php“
„tca.php“

 

Danach unter „Database Analyser“ unter „Update required tables“ den „COMPARE“ durchführen und die Änderungen übernehmen.

 

 

12.13.9.13 Fehler nach Update bei Änderungen im Template Setup Bereich

 

Fatal error: Cannot re-assign $this in /srv/www/htdocs/cms/typo3conf/ext/static_info_tables/class.tx_staticinfotables_syslanguage.php on line 41

 

Ursache:

Wenn TYPO3 von einer vorherigen Version auf die Version 4.2.6 upgedatet wurde so kann es sein das die „static_info_tables“ noch immer in einer alten Version vorhanden ist z.B. 1.8.0 diese verträgt sich nicht mit der jetzt als System Extension inkludierten „static_info_tables_de“.

 

Abhilfe:

Update der Extension „static_info_tables“ durchführen.

 

 

 

12.13.9.14 Fehler in Kommentarfunktion wird Captcha nicht angenommen

 

Jedes Mal wenn der Captcha Text eingeben wird erscheint wieder die Eingabemaske. Wenn die Seite aktualisiert wird erscheint die folgende Fehlermeldung.

 

 

Ursache:

Im TYPO3 Template Browser zeigte sich das der Wert „use Captcha“ obwohl im Einrichtungsformular „captcha extension“ ausgewählt wurde, immer noch der Wert „0“ angezeigt wird.

 

Abhilfe:

Fügen Sie das Template für die News Seite folgenden TS ein:

plugin.tx_comments_pi1.spamProtect.useCaptcha = 1

 

 

12.13.9.15 Fehler tt_news 3.0.1 kommt „plugin.tt_news ERROR: No HTML template found“

 

 

Ursache:

Diese Meldung erscheint beim Einsatz der Extension „RealURL“ wenn bestimmte Seiten von der „tt_news“ Extension aufgerufen werden.

 

Abhilfe:

Kontrollieren Sie die Angabe zu Ihrer HTML Template Datei im Setup Bereich vom Template.

Der könnte auch bei fehlerhaften Einsatz von RealURL auftreten, kontrollieren Sie Ihre RealURL Konfigurationsdatei.

 

 

12.13.10Kommentare für News anlegen (comments)

 

12.13.10.1 Was mach diese Extension?

 

Mit dieser Extension ist es möglich den Webseitenbenutzer die Möglichkeit zu geben, dass diese zu den News Einträgen eigene Kommentare hinzufügen können.

Dabei wir die Liste der Kommentare und das Eingabeformular für die Kommentare angezeigt.

Die Extension hat einen Anti-Spam Schutz und unterstützt die Captcha Extension „captcha“ oder „sr_freecap“.

Die Extension ist sehr einfach aufgebaut und auch einfach einzurichten. Störend ist nur das die Sprachdatei „locallang.xml“ standardmäßig nur die englische Sprache enthält. Die deutschen Texte müssen in dieser Datei selbst angelegt werden.

 

 

12.13.10.2 Installation der Extension „comments“

 

1.    Für die Installation der „comments“ Extension ist die Installation der Extension „Universal page browser Extension key“ (pagebrowse) installiert werden.


2.    Das statische Template „Commenting System (comments)“ zum Root-Template hinzufügen.



3.    Erstellen Sie auf der Seite „Einzelansicht“ (SINGLE) ein zusätzliches Inhaltselement als „Allgemeines Plugin“ und wählen Sie „Commenting system“ als Plugin aus.


4.    Kopieren Sie aus dem Verzeichnis „typo3conf/ext/comments/res/“ die Datei „pi1_template.html“ in Ihr HTML Template Verzeichnis mit den Namen „tt_news_comments.tmpl“.

5.    Kopieren Sie aus dem Verzeichnis „typo3conf/ext/comments/res/“ die Datei „pi1.css“ in Ihr CSS Verzeichnis mit den Namen „tt_news_comments.css“.

6.    Fügen Sie folgendes TypoScript in die das Template für die News Seite ein:

#####################################################
# tt_news comments configuration
#####################################################
#Pfad zum eigenen Template
plugin.tx_comments_pi1.templateFile = fileadmin/templates/html/tt_news_comments.tmpl
#Pfad zur eigenen CSS Datei (es wird als "file21" geladen, dies ist sicher frei)
page.includeCSS.file21 = fileadmin/templates/css/tt_news_comments.css
# Die PID in welcher die Datensätze gespeichert werden
plugin.tx_comments_pi1.storagePid = 40
# Die Pflichfelder für die Eingabe festlegen
plugin.tx_comments_pi1.requiredFields = firstname, lastename, comment
# Das Datumformat welches bei der Anzeige verwendet wird
plugin.tx_comments_pi1.advanced.dateFormat = d.m.Y
# Schalten Sie Captcha Überprüfung für Kommentare ein.
plugin.tx_comments_pi1.spamProtect.useCaptcha = 1
# Die Email Adresse an welche Notification Emails gesendet werden
plugin.tx_comments_pi1.spamProtect.notificationEmail = webmaster@realpowerwork.com
# Die Absender Email Adresse für die Notification Emails
plugin.tx_comments_pi1.spamProtect.fromEmail = webmaster@realpowerwork.com
# Zur Angabe eine eigenen Email Templates
#plugin.tx_comments_pi1.spamProtect.emailTemplate =

 

7.    Führen Sie entsprechende Anpassungen der „tt_news_comments.tmpl“ und der „tt_news_comments.css“ Datei durch.

8.    Fügen Sie in die Datei „typo3conf/ext/comments/pi1/locallang.xml“ die Anpassungen für die deutsche Sprache durch:

                        </languageKey>

                        <languageKey index="de" type="array">

                                   <label index="error_too_many_spam_points">Dies Nachricht wird nicht versendet, das sie Spam sein könnte.</label>

                                   <label index="tt_content.list_type_pi1">Kommentarsystem</label>

                                   <label index="no_page_browser">&lt;strong&gt;Warnung:&lt;/strong&gt; Die Extension "pagebrowser" ist nicht vorhanden. Bitte installieren Sie die Extesnion "pagebrowser" und fügen Sie das Extension Template "Page Browser" zum Root-Template &lt;strong&gt;hinzu&lt;/strong&gt; sowie das Extension Template von der 'comments' Extension. Siehe Beispiel unterhalb.</label>

                        </languageKey>                     

            </data>

 

9.    Danach sollte die Extension Funktionsfähig sein.

 

12.13.11Erweiterung vom „comments“ (comments_ic)

 

Comments: individual closing:

http://typo3.org/extensions/repository/view/comments_ic/current/

 

12.13.11.1 Was mach diese Extension?

 

Mit der Extension „comments“ können Sie zu tt_news Beiträgen Kommentare hinzufügen. Sie ist standardmäßig so konfiguriert, dass sie mit tt_news arbeitet, so ist es lediglich erforderlich, eine Instanz der Extension welche die Seite „tt_news“-Plugin mit SINGLE Ansicht enthält hinzuzufügen. Eine Instanz der Extension sollte in "Kommentare"-Modus, eine andere in "Form"-Modus arbeiten. Das ist alles, es funktioniert also ganz einfach!

Mit dieser Extension können Sie:

1.    Kommentar zu tt_news Artikel hinzufügen

2.    Kommentare automatisch nach einiger Zeit deaktivieren

3.    Die Anzahl der Kommentare tt_news Artikel anzeigen.

 

12.13.11.2 Installation der Extension comments_ic

 

Bei der Installation der Extension kommt folgende Meldung.

 

 

Danach kommt folgende Meldung klicken Sie auf „Make updates“.

 

 

 

 

12.13.11.2.1  Deaktivieren Sie Kommentare nach einiger Zeit

Installieren Sie „comments_ic“ Erweiterung, diese fügt zwei neue Optionen zu tt_news „comments“ hinzu.

 

Deaktivieren Kommentare in tt_news Elementen komplett:

Schließen Sie Kommentare automatisch nach einen definierten Zeitraum

Zeitraum ist definiert durch einfache Syntax. Zum Beispiel bedeutet 5d 5 Tage, 1 m bedeutet 1 Monat und 3h Mittel, um Kommentare nach drei Stunden zu schließen.

 

Seiten-Caching wird berücksichtigt: comments_ic wird sichergestellt, dass Benutzer nicht sehen Kommentare zu bilden, wenn Kommentare sind geschlossen.

 

12.13.11.2.2  Angezeigte Anzahl der Kommentare

Zur Anzeige Anzahl der Kommentare für aktuelle News Artikel, fügen Sie einfach
„###TX_COMMENTS_COUNT###“ Ihre tt_news Template. Das ist alles, was notwendig. Die Anzahl der Kommentare wird sofort angezeigt. Dies funktioniert in LIST, neuesten und tt_news SUCHE Anzeigemodi.

 

Eine andere Extension ist die „Inline Comment for tt_news“:

http://typo3.org/extensions/repository/view/lonewscomments/current/

 

12.13.11.3 Fehler bei CAPTCHA in der Datei „typo3conf/ext/comments/pi1/calls.tx_comments_pi1.php“

 

 

Abhilfe:

Entfernen Sie den Zeilenumbruch und die Leerzeichen bei der Zeile, damit wieder „###CAPTCHA###...“ richtig angezeigt wird und speichern Sie die Datei ab.

 

 


12.14            Einrichtung von MOC Fileshare manager (moc_filemanager)

 

12.14.1    Was macht diese Extension?

 

·         Diese Erweiterung ist „Frontend“-Dateimanager. Es ermöglicht „Frontend“ Benutzern die Verwaltung von lokalen Dateilisten.

·         Der Einstiegspunkt der Dateilisten im „Backend“ nach Benutzergruppen konfigurierbar.

·         Die Extension baut auf ein Konzept von sogenannten Mountpoints. Es kann eine unbegrenzte Anzahl von Mountpoints für die Dateilisten erzeugt werden. Jedem Mountpoint kann ein eigenes Verzeichnis zugeordnet werden.

·         Die Extension kann entweder eine hierarchische Liste der Verzeichnisse und Dateien anzeigen, so vom Windows Explorer bekannt, oder alle Dateien eine Mountpoints in einem einzigen Verzeichnis.

·         Dateien und können und downgeladen, umbenannt und Verzeichnisse erstellt, umbenannt und gelöscht werden.

 

12.14.2    Installation von MOC Fileshare manager

1.    Extension MOC Fileshare manager (moc_filemanager) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren und musste zuerst downgeladen und aus der Datei installiert werden.




2.    Wählen Sie „Install extension“ und danach „Make Updates“ und „Update“ ausführen. Sie können dabei einen Mountpoint für die Dokumentliste festlegen.

Hinweis  Bei [Superroot] und [AutoDirCreation] keine Änderungen vornehmen, also alles lassen, wie es ist.


3.    Der erste Schritt ist die Anlage einer neuen Seite „Filemounts“ als „SysFolder“ für die Speicherung der Mountpoints. Es können darin mehrere Mountpoints erzeugt werden. Der Pfad, muss auf ein physisches Verzeichnis auf dem Webserver verweisen.

Hinweis  Befindet sich das angegebene Verzeichnis außerhalb der TYPO3 Installation, so muss der Zugriff auf dieses Verzeichnis für den Benutzer unter welchen der Apache Server läuft mit Schreibrechten vergeben werden.

4.    Auf dieser Seite klicken Sie auf „Neu“ und wählen „Mount points“ um einen neuen Mountpoint zu erstellen.



5.    Geben Sie einen Namen z.B. „TYPO3 Dokumente“ und das Verzeichnis z.B. „documents“  für den Mountpoint ein.



Hinweis  Bei „Relative path“ den Ordner angeben, der unter dem Verzeichnis „fileadmin“ angelegt wurde. Das heißt in unseren Beispiel muss unter „fileadmin“ ein Verzeichnis „documents“ existieren, in welchen die Dateien abgelegt werden.

6.    Als nächstes erstellen Sie neue Seite „Dokumente“ als Typ „Standard“.

7.    In dieser Seite Erstellen Sie ein neues Inhaltselement mit der Auswahl „Allgemeines Plug-In“ und wählen im Reiter Plug-In „Filebrowser (Explorer) aus.

8.    In den neu angezeigten Feldern wählen Sie folgendes für einen Anzeige von Dokumenten aus.



9.    Unter „Template“-„Constant Editor“ wählen Sie „PLUGIN.FILEMANAGER“ aus und geben den Pfad „fileadmin“ für das „Documentroot“ Verzeichnis ein.



Wählen Sie jetzt „PLUGIN.SHOW FILES“ und geben Sie auch hier den Pfad ein.



Speichern Sie die Einstellungen ab.

10.  Die Anzeige der Dokumente sollte so aussehen.



Sie können Die Anzeige von der Dateigröße und das Datum über eine CSS Datei verändern.

11. Erstellen Sie eine CSS Datei im Verzeichnis „fileadmin/css“ mit dem Namen „moc_filemanager.css“ und geben Sie folgendes ein.

 

/*

** Version   : 1.0

** Datei     : moc_filemanager.css

** Desc      : MOC Fileshare manager

** Extension : moc_filemanager V0.8.1

** Changes   : 10.06.09 - pf - create file version

*/

/* CSS Document */

 

div.tx-mocfilemanager-pi1 table#contenttable td {

  font-size: 10px;

  padding:0;

}

 

div.tx-mocfilemanager-pi1 .borderbottom {

}

 

div.tx-mocfilemanager-pi2 .filelink {

  font-family: Verdana;

  font-size: 12px;

  color: #000033;

  text-decoration: none;

}

div.tx-mocfilemanager-pi2 .filelink:hover {

  text-decoration: underline;

}

div.tx-mocfilemanager-pi1 .filelink img {

  margin-right: 5px;

}

 

div.tx-mocfilemanager-pi2 .info {

  font-family: Verdana;

  font-size: 10px;

  color: #000033;

  font-weight: normal;

}

 

12. Fügen Sie die CSS Datei im Setup Bereich Ihres Root-Template hinzu.

 

page.includeCSS.file1 = fileadmin/templates/css/ve_guestbook.css

page.includeCSS.file2 = fileadmin/templates/css/moc_filemanager.css

page.includeCSS.file3 = fileadmin/templates/css/rpw.css

 

 

 

 

12.14.2.1.1     Fehler „/documents/ does not exist“ bei Aufruf einer VIEW Seite

 

Ursache:

In „Constant Editor“ wurde der Pfad für das „Documentroot“ Verzeichnis nicht angepasst.

 

Abhilfe:

Unter „Template“-„Constant Editor“ wählen Sie „PLUGIN.FILEMANAGER“ aus und geben den Pfad „fileadmin“ für das „Documentroot“ Verzeichnis ein. Dasselbe führen Sie unter „PLUGIN.SHOW FILES“ aus.

 

12.14.2.1.2     Fehler Dateiname in Anzeige wird abgeschnitten

 

Abhilfe:

Die Dateilänge in der Anzeige wird über die konstante „crop_filename“ gesteuert und steht standardmäßig auf „45“ Zeichen. Sie können durch erhöhen diese Wertes die Anzeige des Dateinamens verlängern.

 


12.15            Extension DAM (dam)

12.15.1    Was macht diese Extension?

Digital Asset Management System (DAM) System ist ein Werkzeug, um digitale Inhalte wie Bilder, Text-Dateien und praktisch jedes beliebige andere Dateiformat zu verarbeiten.

Diesen Medien-Dateien können mit Meta-Informationen zusätzliche Informationen zugeordnet werden. Diese Informationen können den Inhalt beschreiben (Beschreibung, Schlüsselwörter, Standort), technische Daten (Bildgröße) oder Copyright-Informationen zum Beispiel. Alle diese Informationen können verwendet werden, um die Dateien zu verwalten, zu finden oder in Mediengruppen zu kategorisieren.

 

Zwei maßgebliche Kräfte führten zur Notwendigkeit einer fortgeschrittenen Verwaltung solcher Dateisammlungen:

Das Digital Asset Management für TYPO3 wurde entwickelt, um die wachsende Nachfrage nach professionellen Dateisammlungsverwaltung in TYPO3 Anwendungen durchzuführen und eine Implementierung zu vereinfachen. Auch wenn die ersten finalen Versionen noch kommen werden im Moment die Vorab-Versionen der Extension in verschiedenen Produktions-umgebungen verwendet.


Die DAM Extension ist vergleichbar mit dem File-Modul das im  TYPO3 Backend als Haupt-Modul integriert ist. Es wird später wenn die Extension „Final“ ist, dass File-Modul und die komplette Dateiverwaltung wie Kopieren, Löschen und Umbenennen von Dateien ist zu ersetzen. Dennoch verwendet DAM keinen neuen Speicher-Typ zum Speichern der Dateien. Die Dateien werden in das Dateisystem nach wie vor gespeichert.

12.15.2    Installation von dam

1.    Extension „dam“ installieren vom Online Repository durch klicken auf das Seitensymbol mit dem roten Pfeilchen.



2.    Es kommt danach folgende Anzeige. Durch klicken auf „Install extension“ wird die Extension installiert.



3.    Sollte die Extension „static_info_tables“ nicht installiert sein, so wird ein „DEPENDENCY ERROR“ angezeigt. Durch klicken auf den Text „Import now“ wird ein neues Fenster geöffnet in welchen die Extension importiert Das Fenster wieder schließen mi „Close Windows an check dependencies“.



4.    Nach schließen des Fensters wird unter dem Text „static_info_tables“ der Text „Install now“ angezeigt. Durch klicken auf den Text wird wieder ein neues Fenster geöffnet.



5.    Es kann auch sei, dass die Abhängigkeit der Extension von der TYPO3 Version nicht erfüllt werden.



In diesen Fall müsste zuerst die TYPO3 Version auf mindestens 4.2.10 upgedatet werden.

6.    Es werden mehrere Tabellen für die Extension angezeigt, welche mit „Make updates“ angelegt werden. Danach das Fenster wieder schließen mit „Close Windows an check dependencies“.

7.    Wenn Sie jetzt auf „Try again“ klicken sollten die notwendigen Tabellen für die Extension „dam“ angezeigt werden. Mit klicken auf „Make updates“ werden die Tabelle angelegt.

8.    Es werden zusätzliche Optionen für die Konfiguration angezeigt. Durch klicken auf „Update“ wird die Konfiguration übernommen.



9.    Danach sollte in der Navigation (nach einen Refresh) ein neues Modul „Media“ angezeigt werden.

 



 

 

12.15.3    Wartungsarbeiten in DAM

 

Die Indexierung in DAM kann mit der Zeit, immer dann wenn sehr viele Änderungen am Verzeichnisbaum der Dateien durchgeführt werden, außer Takt kommen. Das heißt neue Dateien werden nicht Indexiert oder es sind noch immer alte Dateien oder Verzeichnisse Indexiert welche nicht mehr vorhanden sind.

 

Dafür gibt es in der Navigation unter „MEDIEN“ den Menüpunkt „Werkzeuge“. Mit diesem Menüpunkt können Sie die Indexierung aktualisieren, alte Einträge löschen, hochgeladne Dateien erfassen, etc.

 

12.15.4    Fehler in DAM Extension

 

12.15.4.1    Fehler unter „Media“ – „Datei“ werden die Dateien als nicht „indexiert“ angezeigt

Das gelbe Rufzeichen neben dem Datei Icon zeigt an das die Datei nicht indexiert wurde

.

 

Analyse:

1.    Wenn der Upload der Media Dateien, nicht durch den Admin durchgeführt wurde, sondern durch einen anderen Backend oder Frontend Benutzer, sollten die Berechtigungen vom Benutzer oder der Gruppe kontrolliert werden.

2.    Die Extesnsion „dam“ hatte noch keine Zeit die Indizierung der Dateien durchzuführen.

 

Behebung:

1.    Geben Sie den Benutzer oder der Benutzergruppe dir Berechtigungen auf die „DB Mounts“ von „Dateien“ und „Media“.

2.    Klicken Sie im Backend in der Navigation nochmals unter „Media“ – „Datei“ (List) auf den entsprechenden Ordner und warten Sie bis die gelben Rufzeichen verschwinden.

 

 

12.15.4.2    Fehler auf jeder Seite kommt „Class ‚tx_dam‘ not found in…../temp_CACHED_...“

 

Der nach folgende Fehler kommt entweder auf jeder Seite oder wenn in der Navigation „Erweiterung“ ausgewählt wird.

 

Fatal error: Class 'tx_dam' not found in /srv/www/htdocs/rpw/typo3conf/temp_CACHED_ps2038_ext_tables.php on line 2995

 

Ursache:

Eventuell haben Sie versehentlich die DAM Extension deinstalliert, obwohl einige Extension Ihrer Website auf diese Extension aufbauen.

 

Abhilfe:

Fügen Sie in Ihre „localconf.php“ im Verzeichnis „typeo3conf“ zu der Zeile „$TYPO3_CONF_VARS['EXT']['extList'] =“ den Eintrag „dam“ hinzu.

Löschen Sie alle Dateien aus dem Verzeichnis „typo3conf“ welche den Text „CACHE“ enthalten. Das Backend sollte jetzt wieder funktionieren.

 

Wählen Sie jetzt in der Navigation im Backend „DB-Überprüfung“ und führen sie danach ein Update der Indexdateien mit „Referenzindex aktualisieren“ durch.

 

 

Löschen nochmals alle Dateien aus dem Verzeichnis „typo3conf“ welche den Text „CACHE“ enthalten. Klicken Sie danach im Backend  auf das das Symbol  und wählen Sie „Alle Cache löschen“ aus.

 

 

12.15.4.3    Fehler im Frontend „BadFunctionCallExeption“ oder „Extension key ’dam‘ was NOT loaded!“

 

Alle Seiten welche mit der Extension „Frontend Filemanager“ (air_filemanager) arbeiten bringen den Fehler.

 

 

 

Ursache:

Der Fehler wurde durch einen vorherigen „dam“ Fehler ausgelöst. Im Moment bringt jede Seite welche als Plugin die Extension „air_filemanager“ verwendet den Fehler.

 

Abhilfe:

Die Extension „Frontend Filemanager“ (air_filemanager) über den Extension Manger „Erweiterung“ deaktivieren und danach wieder installieren.

 

12.15.4.4    Fehler in DAM wird das „Ordner bearbeiten“ Icon nicht angezeigt

 

 

 

Ursache:

Eine Ursache könnte sein, dass Sie über das TYPO3 Install Tool oder direkt in die „localconf.php“ die Option „[SYS][setDBinit]“ mit folgende Einstellungen vorhanden ist:

SET NAMES utf8;

SET CHARACTER SET utf8;

SET SESSION character_set_server=utf8;

 

Behebung:

Entfernen Sie den Eintrag „SET SESSION character_set_server=utf8;“ oder wenn notwendig auch noch den Eintrag „SET CHARACTER SET utf8;“

 

 

12.15.4.5    Fehler bei Upload von Dateien in DAM „File size exeeded? (8.0M)“

 

Beim Versuch eine PDF Datei über „Media“ – „File“ upzuloaden kommt nachfolgende die Fehlermeldung "No File was uploaded!" und danach „File size exeeded? (8.0M)“.

 

 

Ursache:

In der Datei „php.ini“ ist „upload_max_filesize=20M“ eingestellt im TYPO3 Install Tool unter „All Configuration“ bei der Option „[maxFileSize]“ ist „10240“ (KB) eingestellt. Die Datei hat aber nur 1MB Größe, an diesen Einstellungen kann es also nicht liegen. Wichitg ist hier die „Messages:“ welche „Write-permission problem“ andeutet. Eventuell liegen zu wenig Berechtigungen für den Upload auf diesem Verzeichnis vor.
Es könnte ein Problem mit dem Mime-Typ der Datei vorliegen. Im TYPO3 Install-Tool unter „[form_enctype]“  steht „application/x-www-form-urlencoded“.

 

Behebung:

Kontrollieren Sie die Berechtigungen des Verzeichnisses mit „ls –l“ (oder FTP Client).
Setzen Sie den Owner mit „chown -R wwwrun:ftp fileadmin/“ und die Berechtigungen mit „chmod -R 770 fileadmin/“

Kontrollieren Sie im TYPO3 Install-Tool unter „[form_enctype]“  ob der Wert auf „multipart/form-data“ steht.

 

12.15.4.6    Fehler bei Upload von Dateien  in TYPO3 über „dam“ im Dateinamen keine Umlaute

 

Nach dem Upload von Dateien in ein Uneterverzeichnis von „fileadmin“ welche über die „air_filemanager“ (oder „dam“) Extension im Frontend angezeit wird. Werden Die Umalute im Dateinamen nur mit Sonderzeichen angezeigt.

 

 

oder im Backend kann zwar der Titel berichtig werden aber der Dateiname ist ohne Umlaute.

 

 

Ursache:

Dieser Fehler wurde erste nach Übersiedlung der Website von einem lokalen Server auf ein TYPO3 Website bei einem ISP festgestellt.

 

Abhilfe:

 

 

 

12.15.4.7    Fehler nach dem löschen der Tabellen „air_filemanager“ und „tx_dam“ kommt immer eine Datenbankfehler („Database Error“) Meldung im Backend.

 

 

Im TYPO3 Install Tool „Basic Configuration“ wird die Datenbank mit „NO ACCESS“ angezeigt.

 

 

Dies bedeute die Datenbank ist nicht mehr vorhanden. Anstatt der ausgewählten Tabelle zu löschen wurde die ganze Datenbank gelöscht.

 

 

Datenbank manuelle anlegen im „phpMyAdmin“ anlegen.

 

 

Datenbank Rücksicherung durchführen im „phpMyAdmin“.

 

12.16            Extension DAM Frontend (dam_frontend)

 

12.16.1    Was macht diese Extension?

Diese Erweiterung bietet Downloads und Uploads von Dateien im DAM über das Frontend an. Der Benutzer kann seine Downloads sehr komfortabel durch einen Kategorie-Baum auswählen.

 

Außerdem erlaubt diese Extension die Bereitstellung von Dateien über "pushfile.php", so dass der „fileadmin“ Ordner durch eine „.htaccess“-Datei gesichert werden kann. Die DAM Datensätze können über das Frontend editiert werden.

Eine zweiter Plugin ("DAM Frontend Liste") zeigt eine Liste von Dateien an (diese können manuell von einem Backend-Benutzer ausgewählt werden).

 

Diese Erweiterung sollte von Leuten verwendet werden, die die Notwendigkeit haben, eine große Anzahl von Dateien im DAM Aufzubewahren, damit diese dann heruntergeladen werden können. Außerdem werden alle Dateien angezeigt / heruntergeladen aus den ursprünglich DAM-Dateien. Dadurch müssen keine Dateien in den Medien „media/uploads“ Ordner kopiert werden.

 

WICHTIG  Alle Versionen unter der Version „0.6.5“ haben eine Sicherheitslücke für SQL Injection Angriffe.

 

12.16.2    Installation von dam_frontend (dam_frontend_0.6.6.t3x)

1.    Vorbreitet dazu müssen folgende Extensions installiert sein „static_info_tables“ und die Extension „dam“.

2.    Installieren Sie die Extension „dam_frontend_0.6.6.t3x“ über den „Extension Manager“ entweder über das Online Repository oder von einer lokalen Datei.

3.    Bei der Installation wird angezeigt, dass 5 Tabellen angelegt und einige Felder zur „dam_cat“ hinzugefügt werden. Klicken Sie auf „Make updates“.

4.    Wählen Sie aus der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click here to edit whole template record“ und wählen Sie danach den Reiter „Include“ aus. Fügen Sie das statische Template „DAM Frontend (dam_frontend)“ und eines der Layout Templates wie hier z.B. „DAM Frontend Filelist (dam_frontend) dem Root-Template hinzu.



5.    Als HTML Vorlagen steht eine für „DAM Frontend“ (typo3conf/ext/dam_frontend/pi1/) und eine für „DAM Frontend Dateiliste“ zur Verfügung Wir verwenden hier die „DAM Frontend Dateiliste“. Kopieren Sie die HTML-Vorlagedatei „tmpl_list.html“ aus dem Verzeichnis „typo3conf/ext/dam_frontend/res/“ in Verzeichnis „fileadmin/templates“ mit dem Namen „dam_fe_list.tmpl“.

6.    Auch bei den CSS Dateien Vorlagen steht eine für „DAM Frontend“ (typo3conf/ext/dam_frontend/pi1/) und mehrere für „DAM Frontend Dateiliste“ zur Verfügung Wir verwenden hier CSS Datei für die „DAM Frontend Dateiliste“. Kopieren Sie die CSS-Vorlagedatei „styles.css“ aus dem Verzeichnis „typo3conf/ext/dam_frontend/res/“ in Verzeichnis „fileadmin/css“ auf den Namen „dam_fe_list.css“. Ändern Sie die CSS Dateien entsprechend Ihren Bedürfnissen ab.

7.    Im Setup Bereich des Root-Templates muss für die „DAM Frontend Filelist“ folgendes Eingetragen werden damit die eigen HTML-Vorlagedatei und die CSS Datei verwendet wird:

 

plugin.tx_damfrontend_pi2 {
   
_CSS_DEFAULT_STYLE <
   
template = fileadmin/templates/html/dam_fe_list.tmpl
}

page.includeCSS.file32 = fileadmin/templates/css/dam_fe_list.css

 

Hinweis: Bitte, beachten Sie das bei “DAM Frontend“ diese Einträge anders aussehen müssen, da dort eine andere HTML Vorlage und CSS benutzt wird.

 

8.    Legen Sie danach eine neue Seite oder gehen Sie zu einer vorhandenen Seite. Als Seiteninhaltselement wählen Sie „DAM Frontend Dateiliste“ aus.



9.    Es wird jetzt die Konfigurationsseite für das Plugin angezeigt. Ändern Sie die Optionen wie gewünscht ab und Speichern Sie den Datensatz.



10. Sie können den Zugriff auf den Ordner „fileadmin“ (oder einen Unterordner) über eine „.htaccess“ Datei schützen.
Erstellen Sie dazu eine „.htaccess“ Datei im Ordner „fileadmin“ mit folgenden Inhalt:

Order deny,allow
Deny from all

WICHTIG  Dabei können aber Probleme auftreten, wenn Sie direkte Links auf den “fileadmin“ Ordner verwenden. Dies könnten z.B. für die CSS Dateien der Fall sein. In diesen Fall wird dann, das Design der Webseite zerstört. Außerdem können Sie keine Dateien aus den geschützten Ordner im Backend anzeigen, weil das Backend direkte Links verwendet.

 

 

12.16.2.1    Fehler im Frontend (FE) auf Seiten mit „DAM Frontend“ Plugin

 

 

Ursache:

Sie haben die statischen Template für DAM Frontend nicht in das Root-Template der Seite eingebunden oder der Verweis auf eine eigenes HTML Template ist falsch.

 

Abhilfe:
Wählen Sie aus der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click here to edit whole template record“ und wählen Sie danach den Reiter „Include“ aus. Fügen Sie das statische Template „DAM Frontend (dam_frontend)“ und eines der Layout Templates wie hier z.B. „DAM Frontend Filelist (dam_frontend) dem Root-Template hinzu.

Kontrollieren Sie wenn Sie ein eigenes HTML Template verwenden die Pfadangabe und den Dateinamen zu dem HTML Template.


12.17            Extension MM DAM – FEFileList (mm_dam_filelist)

 

12.17.1    Was macht diese Extension?

Diese Extension nutzt die „dam“ Extension um die Meta-Daten für die Dateien zu speichern.

 

Diese Extension zeigt die Dateien aus dem DAM Tabelle in verschiedenen Ansichten. In der Beschreibung dieser Extension werden einige Beispiele dafür angezeigt.

 

 

Sie können diese Dateien herunterladen - entweder gezippt oder normal.

 

Wenn ein FE-User angemeldet ist, wird protokolliert welche Datei dieser downgeladen hat.

Die LOG-Datei ist im CSV-Format und wird im Ordner „fileadmin/log/“ erstellt. Der Name der Datei ist: „damuserinfo_<aktuelles Jahr><current_month>.Log.csv

 

12.17.2    Installation von mm_dam_filelist (mm_dam_filelist_2.0.3.t3x)

1.    Vorbreitet dazu müssen folgende Extensions installiert sein „static_info_tables“, „dam“, „dam_catedit“.

2.    Wichtig ist das Sie jetzt die Extension „MM ECL – ExtensionClassLibrary” (mm_bccmsbase) installieren.

3.    Nun sind wir bereit die Extension „mm_dam_filelist_2.0.3.t3x“ zu installieren.

4.    Installation in „Extension Manager“ direkt mit der Datei durchführen und auf „Install Extension“ klicken.

5.    Durch klicken auf „Make updates“ werden einige Felder der Tabelle „tc_dam“ hinzugefügt und eine neue Tabelle angelegt (tx_mmdamfilelist_additionalinfo).

6.    In der CONFIGURATION können Sie die Benutzung der „tt_address“ und RelURL Extension aktivieren. Klicken Sie danach auch „Update“.



7.    Wählen Sie aus der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click here to edit whole template record“ und wählen Sie danach den Reiter „Include“ aus. Fügen Sie das statische Template „MM DAM-Fiellist (mm_dam-filelist)“ und eines der Layout Templates wie hier z.B. „MM DAM Layout II (CSS-styles) (mm_dam_filelist) dem Root-Template hinzu.



8.    Wichtig legen Sie jetzt Kategorien für DAM an. Die Extension funktioniert nicht wenn Sie keine Kategorien für DAM angelegt haben.
Die Kategorien können Sie anlegen indem Sie im Seitenbaum auf das „Media“ Icon klicken und „Neu“ auswählen. Danach wählen Sie „Media Kategorie“ aus.



9.    Legen Sie danach eine neue Seite oder gehen Sie zu einer vorhandenen Seite. Als Seiteninhalt wählen Sie „Allgemeines Plug-In“ aus. Im Reiter Plugin wählen sie dann „MM DAM FE Filelist“ und bestätigen diese Änderung.



10. Es wird jetzt die Konfigurationsseite für das Plugin angezeigt. Ändern Sie die Optionen wie gewünscht ab und Speichern Sie den Datensatz.



11. Für die automatische Erzeugung von einen Kategorie-Menü fügen sie folgendes im Setup Bereich des Root-Templates ein:

 

page.10.subparts.navi_dam_cat < plugin.tx_mmdamfilelist_pi1.catTree

 

Wenn der Kategoriebaum nicht vom Root-Element starten soll fügen Sie zusätzlich noch folgendes im Setup Bereich des Root-Templates ein:

plugin.tx_mmdamfilelist_pi1.catTree.startuid = <id1>

 

Anstatt <id1> geben Sie die ID der Kategorie ein bei welcher gestartet wird.

 

12.18            Frontend Filemanager (air_filemanager)

 

12.18.1    Was macht diese Extension?

Diese Extension nutzt die „dam“ Extension um die Meta-Daten für die Dateien zu speichern.

Der Hauptzweck dieser Erweiterung ist für die Verwendung in Online-Communities. Jeder FE‑Benutzer kann seine eigenen Dokumente hochladen, um sie mit anderen zu teilen und bearbeiten.

Außerdem kann diese Extension ausgezeichnet zur Verwaltung von Online Dokumenten verwendet werden. Es gibt eine große Anzahl von Feldern für Meta-Daten die jedem Dokument hinzugefügt werden können. Die FE-Anzeige kann über Templates den eigenen Anforderungen angepasst werden.

Hinweis  Außerdem erzeugt die Extension keine Cache Einträge (no_cache=1), daher werden Dokumente über den Indexed Search „Crawler“ nicht indiziert. Sie könnte sich da nur mit der Extension „air_fefilelist“ weiterhelfen.

 

12.18.2    Installation von air_filemanager (air_filemanager_0.9.27.t3x)

1.    Vorbreitet dazu muss natürlich die Extension „dam“ schon installiert sein.

2.    Download der Datei „air_filemanager_0.9.27“ vom Repository durchgeführt.

3.    Installation in „Extension Manager“ direkt mit der Datei durchführen.

WICHTIG  Wenn Sie die Extension „dam“ nicht schon vorher installiert haben, kann es zu einem allgemeinen Fehler auf der TYPO3 Seite kommen mit „Seite kann nicht angezeigt werden (HTTP 500)“. Um diesen zu beheben müssen Sie den Eintrag „air_filemanager“ wieder aus der Datei „typo3conf/localconf.php“ entfernen.

4.    Es kommt danach folgende Anzeige. Durch klicken auf „Install extension“ wird die Extension installiert.

5.    Es werden mehrere Tabellen für die Extension angezeigt, welche mit „Make updates“ angelegt werden.

6.    Wählen Sie aus der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click here to edit whole template record“ und wählen Sie danach den Reiter „Include“ aus. Fügen Sie statische Template „Filemanager (air_filemanager)“ dem Root-Template hinzu.



7.    Im Root-Template „Setup“ Bereich wurde folgendes angehängt:

# Template Einstellung für air_filemanager
plugin.tx_airfilemanager_pi1 {
            template = fileadmin/templates/html/air_filelist_de.tmpl
            sortconf {
                        separated = 1
                        default = crdate
                        storeInSession = 1
              }
}

 

Damit wird das Root Verzeichnis für den Filemanager auf „fileadmin/“ festgelegt.
Als DAM Media Verzeichnis wird „Media“ festgelegt, dieser Name wird in der mittleren Auswahlleiste von TYPO3 angezeigt.

8.    Legen Sie danach eine neue Seite an oder gehen Sie zu einer vorhandenen Seite. Als Seiteninhalt der Plugin „Filemanager“ ausgewählt. Als Verzeichnis wird „documents“ und als Mode „Homepage“ angegeben.
Damit wird das Verzeichnis „documents“ an das Rootverzeichnis „fileadmin/“ angehängt.



9.    Klicken Sie auf dieser neuen Seite auf das Symbol und wählen Sie „Neu“. Danach wird der Seitentyp „Filemanager Verzeichnisse“ anklicken.



10. Die standardmäßige HTML Template Datei wir mit folgenden Befehlen in das eigene Template Verzeichnis kopiert.

SLES11:~ # cd /srv/www/htdocs/<yourwebsite>
SLES11:~ # cp typo3conf/ext/air_filemanager/pi2/filelist.css fileadmin/templates/html/air_filelsit.tmpl


11. Die Anpassung der der HTML Template Datei könnte wie folgt aussehen, wenn nur eine Anzeige der Dateien ohne Upload oder Bearbeitung geplant ist:

<html>

<body>

<div class=”air_filemanager”>

       <!-- ###FILELIST### -->

 

       ###DISPLAYAREA###

       <div class="displayarea">

                    <!-- ###TITLEROW### -->

</div>

</html>

</body>

 

12. Geben Sie im Setup Bereich vom Root-Template folgendes für den Aufruf ihres eigenen HTML Template ein:

# Template Einstellung für air_filemanager

plugin.tx_airfilemanager_pi1.template = fileadmin/templates/html/air_filelist_de.tmpl

 

13. Die standardmäßige CSS Datei wir mit folgenden Befehlen in das eigene Style Verzeichnis kopiert.

SLES11:~ # cd /srv/www/htdocs/<yourwebsite>
SLES11:~ # cp typo3conf/ext/air_filemanager/pi2/gallery.css fileadmin/templates/css/air_gallery.css


Geben Sie im Setup Bereich vom Root-Template folgendes für den Aufruf ihrer eigenen CSS Datei ein:

 

page.includeCSS.file11.fmgallery = fileadmin/templates/css/air_gallery.css

 

14. Danach können Sie die HTML Datei je nach Belieben formatieren dies könnte wie folgt aussehen:

.tx-airfilemanager-pi1 {

  font-family: arial,sans-serif;

  font-size:11px;

}

 

.tx-airfilemanager-pi1 table tbody tr th {

  text-align:left;

}

 

.tx-airfilemanager-pi1 table tbody tr td {

  text-align:left;

}

 

.tx-airfilemanager-pi1 table tbody tr th.col4 {

  text-align:right;

}

.elem {

  width:150px;

  float:left;

}

.row {

  clear:left;

}

.tx-airfilemanager-pi1 .col3 {

 

}

.tx-airfilemanager-pi1 .col5 {

  text-align:right;

}

.tx-airfilemanager-pi1 .col6 {

  text-align:right;

}

 

15. Die Anzeige von Dokumenten mit einem eigenem Template könnte dann so aussehen:

 

12.18.3    Sortierung Umstellen der Fileliste

Die Sortierung der Filelsite wurde auf Datumssortierung umgestellt.

Im Setup Bereich des Root Templates wurde folgende eingetragen:

 

# Template Einstellung für air_filemanager

plugin.tx_airfilemanager_pi1 {

  template = fileadmin/templates/html/air_filelist_de.tmpl

  sortconf {

    separated = 1

    default = crdate  # andere Sortierungen: name

    storeInSession = 1

  }

}

 


12.19            Einrichtung von Image Rotation (ric_rotation)

 

12.19.1    Was macht diese Extension?

Wie der Name schon sagt können damit wechselnde Image Bilder auf einer TYPO3 Seite eingefügt werden.

 

Funktionalitäten:

·         Unterstützung für Flash Dateien (*.flv)

·         Unterstützung von selbsterstellten Flash-Diashows mit ext: „slideshow“

·         Flash-Erkennung basiert auf der "UFO" - unaufdringliche Flash-Objekte (siehe ufo.js für weitere Informationen über UFO)

·         Unterstützung für animierte GIFs (Seien Sie vorsichtig mit Größenänderung /-sampling!)

·         Die meisten gängigen Bildformate werden unterstützt (JPG, GIF, PNG, ...)

·         Bilder können im Zusammenhang mit internen und externen Seiten.

·         Veröffentlichen von Bildern und Flash – mit Timer.

·         Veröffentlichen von Bildern und Flash per Klicks - Zähler!

·         Veröffentlichen von Bildern und Flash per Ansichten - Zähler!

·         Row-Modus für die Anzeige von Bannern (random, alle).

·         Vollständige Vorlage Unterstützung!

·         Sie können es direkt in Typoskript (mein bevorzugter Modus) oder einfach als Plugin auf der Seite.

·         Banner können in drei Gruppen von Positionen (oben, unten, links, rechts) erstellt werden.

 

12.19.2    Installation von Image Rotation ohne Seiteninhaltselement

1.    Extension Mailform (ric_rotation) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren und musste zuerst down geladen und aus der Datei installiert werden.

2.    Wählen Sie „Install extension“ und danach „Make Updates“.

3.    Kopieren Sie Ihre vorgesehenen Banner-Rotationsbilder in den Ordner „fileadmin/images/banner/“.

4.    Erstellen Sie jetzt eine neue Seite im Verzeichnisbaum mit Namen „Rotation Images“ als Typ „SysOrdner“.

5.    In dieser SysOrdern erstellen Sie jetzt Ihre Bannerbilder indem Sie „Neu“ und Auswahl „Rotationsbild“ klicken.



6.    Geben Sie unter Beschreibung einen Namen für das Rotationsbild ein. Der Bannertyp ist in diesen Fall „Bild“, da es sich um ein Bild handelt.



7.    Klicken Sie dann auf den Reiter „Bannergrafik“ und wählen Sie eine Grafik aus dem Verzeichnis „fileadmin/images/banner/“ aus und klicken Sie auf Speichern.



8.    Führen Sie diese Schritte 5-7 für alle Ihre vorhandenen Rotations Bilder durch.

Hinweis  In einer Multilanguage Umgebung müssen Sie die Bilder a

9.    Im Setup Bereich vom Root-Template folgendes eingeben.

# Erzeugen eines “temp” Objektes für den BODY des HTML Dokumentes

# Übergabe der Inhaltselemente an die Subparts des Dokumentes

temp.mainTemplate = TEMPLATE

temp.mainTemplate {

   template =< plugin.tx_automaketemplate_pi1

   workOnSubpart = DOCUMENT_BODY

…  

subparts.banner < plugin.tx_ricrotation_pi1

   subparts.banner {

         placement=top

         mode=random

         pidList=20

         recursive=0

         image.file.maxW=750

         image.file.maxH=110

   }

}

 

 

12.19.3    Einfügen von Image Rotation“ mit einem Seiteninhaltselement

 

10.






 

 

 

 

12.19.3.1.1     Fehler im Backend auf SysOrdner „filemtime()….: stat failed for“

 

Warning: filemtime() [function.filemtime]: stat failed for /home/.sites/112/site415/web/uploads/tx_ricrotation/banner15.jpg in /home/.sites/112/site415/web/t3lib/class.t3lib_befunc.php on line 1731

 

Und das Eingabefenster wir auf eine Zeile komprimiert:

 

Ursache:

Die Extension kopiert alle hinzugefügten Bilder in das Verzeichnis „uploads/tx_ricrotation“ und sucht diese auch dort. Wenn Sie eine Sicherung und Rücksicherung durchgeführt haben kann es sein das die Bilder dort nicht mehr vorhanden sind.

 

Abhilfe:

Kopieren Sie einfach manuell nochmals die Bilder in dieses Verzeichnis. Wenn Sie mit mehreren Sprachen arbeiten müssen Sie auch die Kopien für die Sprache mit Endung „…_01.jpg“ (für 1. weitere Sprache) für alle Bilder nochmals erzeugen.

 

 

12.19.3.2    Fehler nach Umzug auf neuen Server

 

 

Ursache:

Die Extension kopiert sich die Bilder beim Anlegen eines Eintrages in das Verzeichnis „uploads\tx_ricrotation“. Wenn dieses Verzeichnis nicht mitkopiert wurde, können jetzt keine Bilder mehr gefunden werden.

 

Abhilfe:

Kopieren Sie alle Dateien vom Unterverzeichnis „uploads\tx_ricrotation“ vom alten Server wieder in dasselbe Verzeichnis auf dem neuen Server.


12.20            Einrichtung der Image slideshow (rgslideshow)

 

12.20.1    Was  macht diese Extension?

Die Erweiterung hat 3 wichtige Merkmale:

1.    Die „rgslideshow“ arbeitet innerhalb der Content-Element "Text mit Bild", wie eine Diashow zusammen mit „pmkslimbox“ oder „perfectlightbox“.
Beispiele sind natürlich online: http://www.rggooglemap.com/dev/rgslideshow/slideshow-in-text-mit-bild.html

 

2.    Die „rgslideshow“ ist die ultimative Aufnahme-image-Hänselei Verlängerung. Es ermöglicht die hänseln jeden Datensatz einer Tabelle. Beispiele für tt_news, fe_users & tt_content sind online verfügbar.

a)    Bei Verwendung des Plugin-kann der Bearbeiter entscheiden, welche „Teaser“ angezeigt werden sollen.

b)    Oder verwenden Sie einfach TS um ihre  Einträge automatisch zu wählen.

So erhöhen Sie die Attraktivität ihrer Website (mit einer Galerie oder einem anderen interessanten Informationen), oder jegliche anderen Inhalten.

 

3.    Zeigt normale Fotos oder Bilder in einer schönen Diashow (mit einem Leuchtkasten oder nicht). Wählen Sie die Bilder direkt, oder wählen Sie einen Ordner, um alle Bilder in diesem Verzeichnis).

 

12.20.2    Installation der rgslideshow

1.    Extension Image slideshow (rgslideshow) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren und musste zuerst down geladen und aus der Datei installiert werden.

2.    Wählen Sie „Install extension“ und danach „Make Updates“.

3.    Aktivieren Sie das statische Template „Slideshow (rgslideshow)“ in Ihre Root-Template der Website. Wählen Sie Ihr Root-Template Seite und klicken Sie in der Navigation auf „Template“. Klicken Sie dann auf den Text „Click here to edit whole template record“.

4.    Wählen Sie im Reiter enthält im Fenster „Statische Templates einschließen (aus Erweiterungen)“ unter Objekten "Slideshow (rgslideshow)" aus.



5.    Speichern Sie die Änderung im Root-Template ab.

6.    Legen Sie eine neu Seite mit Namen „Slideshow Images“ als Typ „SysOrdner“ an

7.    Geben Sie auf dieser Seite im Reiter „Optionen im Feld „TSconfig“ folgendes ein.

 

############ Slideshow images (rgslideshow) ##################

rgslideshow.tables = tt_content,tt_news,pages,fe_users

 

8.    Erstellen Sie ein Inhaltselement in der neuen Seite und wählen Sie unter „Slideshow“ aus.



9.    In den Inhaltselement im Reiter „Plug-In“ geben Sie folgendes unter „Einstellungen“ für eine Slideshow von Bildern welche sich in einem Verzeichnis befinden ein.



10. Im gleichen Inhaltselement unter „Erweiterte Einstellungen“ geben Sie folgendes ein.

 

 


12.20.2.1    Fehler im FE „Fehler: Kein Bild wurde im Backend ausgewählt“

 

Dieser Fehler wird im Frontend angezeigt, an der Stelle an welcher das Slideshow Bild erscheinen sollte.

 

 

12.21            Einrichtung der Smooth Gallery (rgsmoothgallery)

 

12.21.1    Was  macht diese Extension?

Die Erweiterungen wie eine Galerie und eine Slideshow, die entweder automatisch das nächste Bild (nach einer veränderlichen Höhe der Zeit) oder der Benutzer können auf die nächste und vorhergehende Bild. Diese beiden Einstellungen können auch miteinander kombiniert werden. Lightbox ist auch (wie slimbox).

 

Die Erweiterung funktioniert in vielerlei Hinsicht:

·         Bilder aus einem Verzeichnis: So fügen Sie einfach den Pfad zu einem Verzeichnis, in dem flexforms und du bist fertig.

·         Bilder von der Einträge: Erstellen Sie einen Datensatz für jedes Bild und speichern Sie die Seite als Ausgangspunkt.

·         Bilder in "Text mit Bild": Präsentation der Bilder von einem normalen Content Element mit rgSmoothGallery.

·         Bilder aus DAM: Wählen Sie die Einträge und Sie haben es geschafft.

·         Bilder aus DAM Kategorien: Wählen Sie ein DAM Kategorie, um die Bilder.

·         Integration in tt_news: Präsentation der Bilder von der im LIST / LATEST oder SINGLE-View.

 

Weitere Funktionen sind:

·         Bilder können beschnitten

·         Beschränkung der Bilder

·         Wasserzeichen
Zeiteinstellung Diashows zu ändern Bilder nach einer bestimmten Zeit

·         Thumbnails in einem anderen div

 

 

12.21.2    Installation der rgsmoothgallery

 

1.    Extension Image slideshow (rgsmoothgallery) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren und musste zuerst down geladen und aus der Datei installiert werden.

2.    Wählen Sie „Install extension“ und danach „Make Updates“ und „Update“.

3.    Aktivieren Sie das statische Template „SmoothGallery (rgsmoothgallery)“ in Ihre Root-Template der Website. Wählen Sie Ihr Root-Template Seite und klicken Sie in der Navigation auf „Template“. Klicken Sie dann auf den Text „Click here to edit whole template record“.

4.    Wählen Sie im Reiter enthält im Fenster „Statische Templates einschließen (aus Erweiterungen)“ unter Objekten "SmoothGallery (rgsmoothgallery)" aus.



5.    In dem Setup Bereich des Root-Templates geben wir folgendes ein wenn wir ohne Flexforms arbeiten wollen. Das unten angeführte Script erstellt eine Bilder-Slideshow für aus einem Verzeichnis.

 

######### Konfiguration SmoothGallery (rgsmoothgallery) #########

plugin.tx_rgsmoothgallery_pi1 {

                mode = DIRECTORY

                startingpoint = fileadmin/templates/images/banner/

                duration = 10000

                big.file.maxW  = 631

                big.file.maxH = 41

                hideInfoPane = 1

                showThumbs= 0

                lightbox = 0

                arrows = 0

}

 

 

12.21.2.1    Anpassung vom Design „SmoothGallery“ über CSS Dateien

 

1.    Kopieren Sie die CSS Datei „jd.gallery.css“ aus dem Verzeichnis „typo3conf/ext/rgsmoothgallery/res/css/“ in Ihr CSS Verzeichnis unter „fileadmin“ z.B. „fileadmin/css“.

2.    Bearbeiten Sie die Datei „jd.gallery.css“ und ändern Sie folgende Einträge um den schwarzen Hintergrund das Ladefenster und den Rahmen um die Bilder zu entfernen.

 

.tx-rgsmoothgallery-pi1 {

                background:#ffffff center;

}

.myGallery {

                border: 0px;

}

.jdGallery .slideElement

{

        background-color: #fff;

}

.jdGallery .loadingElement

{

        background-color: #fff;

}

 

3.    In dem Setup Bereich des Root-Templates geben Sie den Pfad für die CSS Datei ein.

 

plugin.tx_rgsmoothgallery_pi1.pathToJdgalleryCSS = fileadmin/templates/css/jd.gallery.css

 

 

12.21.2.2    Einrichtung von „SmoothGallery“ mit Flexforms

 

Hinweis  Bei meiner Installation funktionierte die Anzeige von Bildern mit den Angaben im Flexforms nicht. Nur durch Einträge im Setup Bereich funktionierte die Extension. Der Vollständigkeit halber aber hier trotzdem der Ablauf.

 

11. Legen Sie eine neu Seite „Smooth Gallery“ als Typ „SysOrdner“.

12. Erstellen Sie auf diese Seite ein Inhaltselement mit „SmoothGallery“.



13. Gehen Sie auf den Reiter „Plug-In“ und dort auf „Einstellungen“.





14. Im Reiter „Erweiterte Einstellungen“ folgendes auswählen.

 


12.21.2.3    Fehler: Das TS wurde nicht inkludiert. Bitte im Manual nachschlagen.

 

Ursache:

Übergabe des Plug-In an den Subpart ist falsch. Das Subpart wurde folgenderweise angesprochen „subpart.bilder < tx_rgsmoothgallery_pi1“.

Hier fehlt also noch vor „tx_rgsmoothgallery_pi1“ der „plugin“ Eintrag.

 

Abhilfe:

Richtige Übergabe an  den Subpart „subpart.bilder < plugin.tx_rgsmoothgallery_pi1“

 

 


12.21.2.3.1     Fehler Bildinhalt hat nur einen schwarzen Bereich und dauernd anstehenden Ladebalken


Ursache:

Ist der Pfad zu den Bildern korrekt eingetragen? Abschließender Slash! (/)

Alle Order und Bilder müssen mindestens Zugriffsrecht 0644 oder 0777 (chmod)!

ImageMagick muss dem Server installiert sein und auch funktionieren.

Im „TypoScript Object Browser“ wird der „mode“ Parameter nicht angezeigt!

 

Abhilfe:

Im Setup Bereich wurde folgendes eingetragen.

 

plugin.tx_rgsmoothgallery_pi1.mode = DIRECTORY

plugin.tx_rgsmoothgallery_pi1.startingpoint = fileadmin/templates/images/banner/

 

12.22            Extension ICS AWstats (ics_awstats)

Eine Erweiterung der ursprünglichen AWstats Extension (cc_awstats) um Ausführliche Loganalysen der TYPO3 Logdateien durchzuführen. Diese Extension beinhaltet schon das Programm „AWstats“ um die Loganalysen durchzuführen, d.h. es muss dieses Programm nicht zusätzlich installiert werden.

 

12.22.1    Installation der Extension „ics_awstats“

1.    Extension „ics_awstats“ (V 0.5.3) installieren.

2.    Backend Browserfenster aktualisieren. Es wird ein neuer Menüpunkt in der Navigation „AWstats“ angezeigt.



3.    Pfad zu der Logdatei manuell oder über das TYPO3 „Install Tool“ eintragen in die Datei „localconf.php“ im Verzeichnis „typo3conf“, z.B.:
$TYPO3_CONF_VARS['FE']['logfile_dir'] = 'typo3temp/log/';

Hinweis  Der Pfad lt. Beschreibung ist immer „fileadmin/log“. Dieser Pfad wurde hier bewußt geändert auf den „typo3temp/log“, da auf diesen Pfad von Extern nicht zugegriffen werden kann. Dies wurde aus Gründen des Datenschutzes durchgeführt, damit keine Zugriffe von der Homepage durchgeführt werden können.

4.    Legen Sie im Verzeichnis „fileadmin“ das neue Verzeichnis „log“ an.

5.    Setzen Sie Schreibrecht auf das Logverzeichnis „log“ für die Gruppe unter welcher Ihr Apache Server läuft. Bei einer LAMPP Installation ist dies z.B.:
chgrp -R wwwrun:root /srv/www/htdocs/rpw/typ3temp/log
chmod -R g+w,o-rwx /srv/www/htdocs/rpw/typo3temp/log


Hinweis  Ersetzen Sie den Text „rpw“ durch den Pfad Ihrer TYPO3 Installation.

6.    In das Setup Feld des Root Templates schreiben Sie folgendes TypoScript:

 

# ICS AWStat Extension Konfigurieren

config.stat = 1
config.stat_apache = 1
config.stat_apache_logfile =homepage.log

// you can use this if you want database logging also but its’s not needed

#config.stat_mysql = 1

Erstellen Sie im Verzeichnis „fileadmin/log“ die Datei „homepage.log“. Vergeben Sie wieder Schreibrechte für die Gruppe unter welcher Ihr Apache Server läuft auf diese Datei.

7.     Klicken Sie auf den Menüpunkt „AWstats“ und geben Sie in der Konfiguration den Domainnamen für Ihre Logdatei ein, z.B.:



Klicken Sie danach auf „Konfiguration sichern“.

Hinweis  Wenn Sie bei einer Datei „-„ (minus) eintragen und damit festlegen das dies keine Logdatei ist, so wird dies in der Datei (nach klicken auf „Konfiguration sichern“)
„fileadmin//log/.awstats-data/awstats-module.conf“ mitgeschrieben (diese Datei ist in einem versteckten Verzeichnis).



8.    Es sollte jetzt folgende Ansicht der Statistiken erscheinen.



9.     Klicken Sie auf die Schaltfläche „Jetzt aktualisieren“. Danach sollten die Statistikeinträge in der Ansicht angezeigt werden.



12.22.2    AWstats für normale Benutzer zugänglich machen

 

1.    Ext Manager aufrufen

2.    Informationen von AWstats aufrufen

3.    Auf Edit Files gehen (funktioniert nur wenn in „localconf.php“ Edit erlaubt wurde), ansonsten die Dateien über den Editor direkt bearbeiten.

4.    In ext_tables.php das »tool« auf »web« ändern

5.    In mod1/conf.php tool_txccawstatsM1 auf web_... abändern! Und den Access von »admin« auf »user,group« ändern

6.    In mod1/index.php folgendes abändern:

 

$this->pageinfo = t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause);

$access = is_array($this->pageinfo) ? 1 : 0;

               

if(($this->id && $access) || ($BE_USER->user["admin"] && !$this->id) {

 

ändern in:

 

$this->pageinfo = t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause);

$access = is_array($this->pageinfo) ? 1 : 0;

               

if(($this->id && $access) || ($BE_USER->user["admin"] && !$this->id) || ($BE_USER->user["uid"] && !$this->id)) {

 

 

Nun kann ein normaler (nicht admin) Benutzer auf „AWstats“ unter den „Web“ Tools zugreifen.

 

Nun der Benutzergruppe des Benutzers einfach unter »Include Access Lists« einmal »web« und dann noch »Web>AWStats« zuweisen und es müsste gehen...

 

 

12.22.3    Aufgetreten Fehler bei „ics_awstats“

 

12.22.3.1    Fehler „No logfile found in directory“

 

FEHLER:
No logfiles found in directory ''
The logfiles have to be named *.log or *log*.txt
examples: my-domain.log logfile.txt website-log.txt

 

Ursache:
In der Datei “localconf.php” im Verzeichnis “typo3conf” wurde der Pfad zu der Logdatei nicht eingetragen.

 

Abhilfe:

Pfad zu der Logdatei manuell in die „localconf.php“ oder über das TYPO3 „Install Tool“ eintragen, z.B.:
$TYPO3_CONF_VARS['FE']['logfile_dir'] = 'typo3temp/log/';

 


12.22.3.2    Fehler “The logfile directory … was NOT found!”

 

FEHLER:
The logfile directory '' configured in typo3conf/localconf.php as '' was NOT found!

 

Abhilfe:

Geben Sie den richigten Pfad zu Ihren vorher erstellen Logverzeichnis in der Datei „localconf.php“ im Verzeichnis „typo3conf“ ein z.B.:
$TYPO3_CONF_VARS['FE']['logfile_dir'] = 'typo3temp/log/';

 

 

12.22.3.3    Fehler “Could not create directory… check write permission”

 

FEHLER:
Could not create directory '' to store data for AWStats. Please check write permissions.

 

Ursache:

Die Gruppe unter der Ihr Apache Server läuft hat keine Schreibrechte auf das Logverzeichnis.

 

Abhilfe:

Setzen Sie Schreibrecht auf das Logverzeichnis für die Gruppe unter welcher Ihr Apache Server läuft. Bei einer LAMPP Installation könnte dies  z.B. so aussehen:
chgrp –R www /srv/www/htdocs/rpw/typo3temp/log

chmod –R g+w,o-rwx /srv/www/htdocs/rpw/typo3temp/log

 

12.22.3.4    Fehler “Fatal error: Call to undefined method template::Middle()”

 

Fatal error: Call to undefined method template::middle() in /home/.sites/112/site415/web/typo3conf/ext/ics_awstats/mod1/index.php on line 87

 

Ursache:

Dieser Fehler tritt ab TYPO 4.6 auf, da in dieser Version alle als “deprecated” angekündigten Änderungen in den Core Modulen entfernt wurden.

 

Abhilfe:

Damit die Statistik wieder funktioniert, muss in der Datei mod1/index.php bei der Funktion „printContent()“ folgende Zeile auskommentieren oder löschen:

 

$this->content.= $this->doc->middle();

 

12.22.3.4.1     Fehler “ics_awstats” das Menü überschreibt sich selbst bei der Anzeige

 

 

Ursache:

Noch nicht ermittelt.

 

Abhilfe:

 

12.23            Extension Popup Manager (popup_manager)

Mit dieser Extension können Sie gewünschte Seiten im Backend als „Popup“ definieren. Diese Seiten werden dann im Browser immer als Popup Fenster geöffnet.

 

12.23.1    Installation

1.    Installieren Sie die Extension „popup_manager“. Es werden 3 neue Tabellen angelegt.

2.    In der Seitendefinition im Backende (Standard, Erweitert, etc.) werden jetzt neue Felder angezeigt.

3.    Wenn das Option „Popup“ angeklickt wird, erscheint die Seite im Frontend immer als Popup Fenster wenn sie angeklickt wird.

4.    Das Feld „Parameter“ kann zur Übergaben von Parameter wie Breite und Höhe für das Fenster verwendet werden z.B. „width=547,height=499,resizeable=no,scrollbars=no,menubar=no“.

5.    Im Feld „Popup Titel“ kann ein Titel für das Popup Fenster eingegeben werden. Geben Sei beim Namen keine Sonderzeichen ein, ansonsten kommt ein Scriptfehler im MS Internet Explorer.

 

12.23.1.1    Fehler „Ungültiges Argument“ im MS Internet Explorer beim Öffnen der Seite

Beim Öffnen der Seite im MS Internet Explorer kommt ein Skriptfehler mit „Ungültiges Argument“ und die Seite wird nicht als Popup geöffnet. Im Firefox oder Netscape funktioniert das Popup aber normal.

 

Ursache:

Eventuell haben bei der Definition des „Popup titles“ für das Popup im Backend ein Sonderzeichen eingegeben z.B. ein Plus („+“) Zeichen. Der Internet Explorer interpretiert dies als falsches Zeichen in dem JavaScript für das Popup.

 

Abhilfe:

Geben Sie in das Feld „Popup title“ keine Sonderzeichen für den Fensternamen ein.

 

12.23.1.2    Fehler mit „popup_manager“ und „formhandler“ Extension

 

Warning: main(PATH_tslibclass.tslib_pibase.php) [function.main]: failed to open stream: No such file or directory in /opt/lampp/htdocs/cms/typo3conf/ext/popup_manager/class.vl_tslib_content.php on line 27

Fatal error: main() [
function.require]: Failed opening required 'PATH_tslibclass.tslib_pibase.php' (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/cms/typo3conf/ext/popup_manager/class.vl_tslib_content.php on line 27

 

Ursache:

Nachdem die Extension „popup_manager“ Installiert wurde erscheint diese Fehlermeldung wenn in der Navigationsleiste auf das Modul „formhandler“ geklickt wird.

 

Abhilfe:

Workaround es wird die „required_once“ von „class.tslib_pibase.php“ in „include_once“ umgeändert.

 

 


13    TYPO3 Website Übersiedlung

13.1    Scenarien einer Übersiedlung von TYPO3 Websites

Der Umzug einer TYPO3 Website kann erforderlich sein, wenn Sie eine TYPO3 Website Online betreiben und zusätzlich lokal einen Linux Server laufen haben, auf dem Sie Entwicklungen für die gleiche Website durchführen. Beim Umzug der TYPO3 Website, werden entweder Teile, oder die ganze TYPO3 Installation von einem Server auf den anderen übersiedelt.
Ein anderer Fall könnte ein TYPO3 Versionsupdate sein, welches Sie zuerst auf einem lokalen Server installieren und ausgiebig testen, und erst dann wieder auf einen Server bei einem ISP übertragen.

Dieses Kapitel beschreibt Scenarien welche bei einer Übersiedlung (Umzug) von Websites von einem lokalen Server auf einen Server eines ISP, oder auch umgekehrt vom ISP auf einem lokalen Server, sowie bei einem Umzug von einem ISP auf einen anderen ISP zu beachten sind.

 

13.1.1        Übersiedlung der Site vom lokalen Server auf eine ISP Server

Ausgangspunkt ist hier eine funktionierden TYPO3 Site auf einem lokalen Server. Diese soll jetzt auf einen ISP Server übersiedelt werden.

 

WICHTIG  Es wird davon ausgegangen, dass die verwendete TYPO3 Versionen auf dem lokalen Server, wie beim ISP Server, die selber Versionsnummer besitzen. Ansonsten können Sie eine unschöne Überraschung erleben, besonders beim Update von TYPO 4.5.x auf die 4.6.x Version, das Funktionalitäten die vorher gelaufen sind, plötzlich Fehler erzeugen.

 

1.    Erstellen Sie sich ein loakle Projektverzeichnis auf welches Sie loakl und auch Online zugreifen können z.B. „RPW-Umsiedlung“.

2.    In diesem erstellen Sie zusätzlich noch zwei Verzeichnisse einmal „Lokal“ einmal „Online“ und dann noch ein „Backup“ Verzeichnis.

3.    Unter dem Verzeichnis „Lokal“ erstellen Sie jetzt zwei weitere Unterverzeichnisse „Homepage“ und „DB“.

4.    Kopieren Sie von der lokalen TYPO3 Installation (vom lokalen Server) entweder direkt, über SSH („Tunnelier“ Programm), oder über einen FTP Client, folgende Verzeichnisse und Dateien in das Verzeichnis „RPW-Umsiedlung/Lokal/Homepage“:
- „fileadmin
- „typo3conf
- „uploads
- und die Datei „.htaccess

5.    Wenn Sie noch zusätzlich ein „typo3_prog“ Verzeichnis ausserhalb des TYPO3 Verzeichnisses besitzen, kopieren Sie diese Verzeichnis in das Verzeichnis „RPW‑Umsiedlung/Lokal/“

 

6.    Kopieren Sie das Programm „mysqldumper“ auf Ihren lokalen Server in Ihr TYPO3 Verzeichnis „mysqldumper“. Starten Sie den das Programm über den URL der TYPO3 Installation mit nachfolgend „/mysqldumper“.

Download „mysqldumper“: http://www.mysqldumper.de/

WICHTIG  Schützen Sie das Verzeichnis vom „mysqldumper“ immer mit einem Login und einem Kennwort. Der „mysqldumper“ fordert Sie beim ersten Einstieg dazu auf.

7.    Führen Sie im Programm „mysqldumper“ ein Backup Ihrer TYPO3 Datenabnk aus und speichern sie das Backup im Verzeichnis „RPW-Umsiedlung/Lokal/db“ ab.

8.    Wenn auf dem TYPO3 Server bei Ihrem ISP schon eine funktionierende TYPO3 Installation mit Inhalt vorhanden ist, sollte Sie jetzt auch diese sichern. Wenn nicht gehen Sie bei Punkt 12. weiter.

Beginnend wieder mit den Dateien Ihrer TYPO3 Installation beim ISP kopieren Sie diese in das Verzeichnis „RPW‑Umsiedlung/Backup/Homepage“:
- „fileadmin
- „typo3conf
- „uploads
- und die Datei „.htaccess“, „.htpasswd“ und „.group“ (wenn vorhanden).

Hinweis  Schneller geht es wenn Sie diese Verzeichnisse und Dateien auf ISP Server nur umbenennen und mit der Endung „_old“ versehen. Damit ersparen Sie sich bei großen Sites die möglichen Transferzeiten, wenn Sie eventuell bei einem Fehler während der Übersiedlung, wieder auf die alte Version zurückstellen müssen.

9.    Kopieren Sie ds Programm „mysqldumper“ auf Ihren ISP Server in Ihr TYPO3 Verzeichnis „mysqldumper“. Starten Sie den das Programm über den URL der TYPO3 Installation mit nachfolgend „/mysqldumper“.

10. Führen Sie im Programm „mysqldumper“ ein Backup Ihrer TYPO3 Datenbank aus und speichern sie das Backup im Verzeichnis „RPW-Umsiedlung/Backup/db“ ab.

11. Als nächstes können wir über den FTP Client eine Bereinigung der vorhandenen Verzeichnisse auf dem ISP Server durchführen. Bei Verzeichnissen, welche schon in das Verzeichnis „Backup“ gesichert wurden, können Sie diese komplett löschen. Zur Sicherheit sollten Sie aber alle alten Verzeichniss vorerst nur auf die Endung „_old“ umbenennen. Wenn die neue Website dann funktioniert, können diese immer noch gelöscht werden. Folgende Umbebennungen durchführen durch anhängen von „_old“:
- „fileadmin_old“
- „t3lib_old“
- „typo3_old“
- „typo3conf_old“
- „typo3temp_old“
- „upload_old“
- Datei „.htaccess_old“
- Datei „index.php._old

Hinweis  ISP spezifisch könnten auch noch andere Verzeichnisse im TYPO3 Installationsverzeichnis vorhanden sein. Welche aber eine Versionsänderung der TYPO3 Installation bei Ihrem ISP nicht beinflussen sollten.

12. Loggen Sie sich in das ISP Verwaltungstool für Ihre Website ein.
Erstellen Sie jetzt zuerst eine neue SQL Datenbank für Ihre neue TYPO3 Installation.


Hinweis  Wenn Sie eine Umsiedlung der Website auf einen lokalen Server durchführen, installieren Sie zuerst TYPO3 oder eine neue TYPO3 Instanz (siehe Kapitel „5 Neuinstallation von TYPO3“ oder „7 Zusätzliche neue TYPO3 Instanz erstellen“) und dann gehen Sie in das TYPO3 Install Tool und erstellen eine neue Datenbank. Beachten Sie besonders die Hinweise auf den verwendeten Zeichensatz für die TYPO3 Datenbank.

13. Gehen Sie jetzt in die Verwaltungsanwendung Ihres ISP und wählen Sie dort das Paket für Ihre neue Website aus z.B. „TYPO3 4.6“. Wählen Sie die neue Datenbank aus und geben Sie den Pfad für die Installation (normal „/“) ein. Führen Sie die Installation aus.



Hinweis  Es könnte notwendig sein, dass Sie für die Installation zuerst auf die neue Version PHP 5.3 wechseln müssen:



14. Prüfen Sie jetzt, ob die neue Website bei Ihrem ISP funktioniert. Es sollte normalerweise der Text „HELLO WORLD!“ angezeigt werden.

15. Soweit so gut, nun kopieren Sie aus der neue TYPO3 Installation beim ISP das Verzeichnis „typo3conf“ in das lokale Verzeichnis „RPW‑Umsiedlung/Online/Homepage“.

Hinweis  Wichtig ist Sicherung besonders wegen der originalen „localconf.php“ Datei.

16. Jetzt kommt der schwierigste Teil, Sie müssen die „localconf.php“, welche sich jetzt im Verzeichnis „RPW‑Umsiedlung/Online/Homepage/typo3conf“ befindet, mit Ihrer lokalen aus dem Verzeichnis „RPW‑Umsiedlung/Lokal/Homepage/typo3conf“ abgleichen
Dabei dürfen Sie die Einstellungen für die Datenbankanmeldung, des Grafikprogramms, etc. nicht ändern. Fertigen Sie zuerst eine Kopie der „localconf.php“ im Verzeichnis „RPW‑Umsiedlung/Online/Homepage/typo3conf“ an.

Unten sehen Sie den Inhalt der neuen „localconf.php“ in welche vor dem Ende „?>“ noch der Inhalt welche unterhalb der Datenbankzugriff und Grafikeinstellungen sowie des php_safemode steht in rot eingefügt:

<?php

if (!defined ('TYPO3_MODE')) {

                die ('Access denied.');

}

 

$TYPO3_CONF_VARS['SYS']['sitename'] = 'New TYPO3 site';

 

                // Default password is "joh316" :

$TYPO3_CONF_VARS['BE']['installToolPassword'] = '1234567890';

 

$TYPO3_CONF_VARS['EXT']['extList'] = 'info,perm,func,filelist,about,version,tsconfig_help,context_help,extra_page_cm_options,impexp,sys_note,tstemplate,tstemplate_ceditor,tstemplate_info,tstemplate_objbrowser,tstemplate_analyzer,func_wizards,wizard_crpages,wizard_sortpages,lowlevel,install,belog,beuser,aboutmodules,setup,taskcenter,info_pagetsconfig,viewpage,rtehtmlarea,css_styled_content,t3skin,t3editor,reports,felogin,form';

 

$typo_db_extTableDef_script = 'extTables.php';

 

## INSTALL SCRIPT EDIT POINT TOKEN - all lines after this points may be changed by the install script!

 

$TYPO3_CONF_VARS['EXT']['extList'] = 'info,perm,func,filelist,about,version,tsconfig_help,context_help,extra_page_cm_options,impexp,sys_note,tstemplate,tstemplate_ceditor,tstemplate_info,tstemplate_objbrowser,tstemplate_analyzer,func_wizards,wizard_crpages,wizard_sortpages,lowlevel,install,belog,beuser,aboutmodules,setup,taskcenter,info_pagetsconfig,viewpage,rtehtmlarea,css_styled_content,t3skin,t3editor,reports,felogin,form,rsaauth,saltedpasswords';

$TYPO3_CONF_VARS['SYS']['encryptionKey'] =  '1234567890';

$TYPO3_CONF_VARS['SYS']['compat_version'] = '4.6';

$typo_db_username = 'user‘;

$typo_db_password = '********';

$typo_db_host = 'mysql.domain.com';

$typo_db = 'rpwdb1';

$TYPO3_CONF_VARS['EXT']['extConf']['saltedpasswords'] = 'a:2:{s:3:"FE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}s:3:"BE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}}';

$TYPO3_CONF_VARS['BE']['loginSecurityLevel']  = 'rsa';

$TYPO3_CONF_VARS['FE']['loginSecurityLevel']  = 'rsa';

$TYPO3_CONF_VARS['EXT']['extConf']['em'] = 'a:1:{s:17:"selectedLanguages";s:2:"de";}';

$TYPO3_CONF_VARS['GFX']['im_path'] = '/usr/bin/php_safemode/';

$TYPO3_CONF_VARS['GFX']['im_path_lzw'] = '/usr/bin/php_safemode/';

$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im6';

$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite';

$TYPO3_CONF_VARS['GFX']['im_imvMaskState'] = 1;

$TYPO3_CONF_VARS['GFX']['im_no_effects'] = 0;

$TYPO3_CONF_VARS['GFX']['TTFdpi'] = 96;

 

# email with php_safemode=on

if (!function_exists('user_fcmail')) {  

                $TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/utility/class.t3lib_utility_mail.php']['substituteMailDelivery'][] = 'user_fcmail';

 

                function user_fcmail($parameters) {

                               $to                   = $parameters['to'];

                               $subject              = $parameters['subject'];

                               $messageBody          = $parameters['messageBody'];

                               $additionalHeaders    = $parameters['additionalHeaders'];

                               $additionalParameters = $parameters['additionalParameters'];

 

                               $success = mail($to, $subject, $messageBody, $additionalHeaders);

                               return $success;

                }

}

 

$TYPO3_CONF_VARS['EXT']['extList'] = 'extbase,css_styled_content,tsconfig_help,context_help,extra_page_cm_options,impexp,sys_note,tstemplate,tstemplate_ceditor,tstemplate_info,tstemplate_objbrowser,tstemplate_analyzer,func_wizards,wizard_crpages,wizard_sortpages,lowlevel,install,belog,beuser,aboutmodules,setup,taskcenter,info_pagetsconfig,viewpage,automaketemplate,tipafriend,rtehtmlarea,indexed_search,t3skin,ric_rotation,tt_news,macina_searchbox,phpmyadmin,about,cshmanual,feedit,opendocs,recycler,t3editor,reports,scheduler,version,dam,air_filemanager,dam_catedit,statictemplates,ve_guestbook,captcha,info,perm,func,filelist,fluid,workspaces,static_info_tables,formhandler,crawler,realurl,w4x_backup,ics_awstats';             // Modified or inserted by TYPO3 Extension Manager. Modified or inserted by TYPO3 Install Tool. Modified or inserted by TYPO3 Core Update Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['css_styled_content'] = 'a:1:{s:15:"setPageTSconfig";s:1:"1";}';       //  Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['rtehtmlarea'] = 'a:19:{s:21:"noSpellCheckLanguages";s:23:"ja,km,ko,lo,th,zh,b5,gb";s:15:"AspellDirectory";s:15:"/usr/bin/aspell";s:17:"defaultDictionary";s:2:"de";s:14:"dictionaryList";s:2:"de";s:18:"HTMLAreaPluginList";s:198:"TableOperations, SpellChecker, ContextMenu, SelectColor, TYPO3Browsers, InsertSmiley, FindReplace, RemoveFormat, CharacterMap, QuickTag, InlineCSS, DynamicCSS, UserElements, Acronym, TYPO3HtmlParser";s:20:"defaultConfiguration";s:105:"Typical (Most commonly used features are enabled. Select this option if you are unsure which one to use.)";s:12:"enableImages";s:1:"1";s:24:"enableAccessibilityIcons";s:1:"1";s:16:"enableDAMBrowser";s:1:"0";s:22:"enableMozillaExtension";s:1:"1";s:14:"enableInOpera9";s:1:"1";s:16:"forceCommandMode";s:1:"0";s:15:"enableDebugMode";s:1:"0";s:23:"enableCompressedScripts";s:1:"1";s:20:"mozAllowClipboardUrl";s:114:"http://releases.mozilla.org/pub/mozilla.org/extensions/allowclipboard_helper/allowclipboard_helper-0.5.3-fx+mz.xpi";s:18:"plainImageMaxWidth";s:1:"0";s:19:"plainImageMaxHeight";s:1:"0";s:20:"enableInlineElements";s:1:"0";s:19:"allowStyleAttribute";s:1:"1";}';    // Modified or inserted by TYPO3 Extension Manager.releases.mozilla.org/pub/mozilla.org/extensions/allowclipboard_helper/allowclipboard_helper-0.5.3-fx+mz.xpi";s:18:"plainImageMaxWidth";s:1:"0";s:19:"plainImageMaxHeight";s:1:"0";}';       //releases.mozilla.org/pub/mozilla.org/extensions/allowclipboard_helper/allowclipboard_helper-0.5.3-fx+mz.xpi";s:18:"plainImageMaxWidth";s:1:"0";s:19:"plainImageMaxHeight";s:1:"0";}';              //

$TYPO3_CONF_VARS['EXT']['extConf']['w4x_backup'] = 'a:1:{s:11:"w4x_backup.";a:11:{s:14:"mysqldump_path";s:18:"/usr/bin/mysqldump";s:10:"mysql_path";s:14:"/usr/bin/mysql";s:9:"7zip_path";s:29:"c:\\Program files\\7-zip\\7z.exe";s:8:"tar_path";s:3:"tar";s:11:"backup_path";s:13:"typo3temp/w4x";s:11:"date_format";s:9:"Y-m-d H:i";s:10:"max_number";s:1:"0";s:8:"max_days";s:1:"0";s:8:"excluded";s:0:"";s:9:"permCheck";s:1:"1";s:10:"addTarList";s:1:"1";}}'; // Modified or inserted by TYPO3 Extension Manager. Modified or inserted by Tasks Manager Config Update.

$TYPO3_CONF_VARS['EXT']['extConf']['indexed_search'] = 'a:20:{s:8:"pdftools";s:38:"/srv/www/htdocs/typo3_progs/xpdf-3.03/";s:8:"pdf_mode";s:2:"20";s:14:"nativeOOMethod";s:1:"0";s:10:"OOoExtract";s:15:"/usr/local/bin/";s:4:"ruby";s:15:"/usr/local/bin/";s:6:"catdoc";s:40:"/srv/www/htdocs/typo3_progs/catdoc-0.94/";s:6:"xlhtml";s:15:"/usr/local/bin/";s:7:"ppthtml";s:15:"/usr/local/bin/";s:5:"unrtf";s:15:"/usr/local/bin/";s:9:"debugMode";s:1:"0";s:23:"disableFrontendIndexing";s:1:"0";s:6:"minAge";s:2:"24";s:6:"maxAge";s:3:"168";s:16:"maxExternalFiles";s:1:"5";s:11:"flagBitMask";s:3:"196";s:16:"ignoreExtensions";s:0:"";s:17:"indexExternalURLs";s:1:"0";s:5:"unzip";s:9:"/usr/bin/";s:18:"fullTextDataLength";s:1:"0";s:26:"useCrawlerForExternalFiles";s:1:"1";}';        // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['ric_rotation'] = 'a:1:{s:7:"typeNum";s:4:"9005";}';               // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['slideshow'] = 'a:1:{s:7:"typeNum";s:4:"9005";}';  //  Modified or inserted by TYPO3 Extension Manager.

$typo3_db_extTableDef_script = "libs/extTables.php";

$TYPO3_CONF_VARS['SYS']['curlUse'] = '1'; // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['FE']['disableNoCacheParameter'] = '0'; //  Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['BE']['disable_exec_function'] = '0';        // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['EXT']['extConf']['tt_news'] = 'a:15:{s:13:"useStoragePid";s:1:"1";s:13:"noTabDividers";s:1:"0";s:25:"l10n_mode_prefixLangTitle";s:1:"1";s:22:"l10n_mode_imageExclude";s:1:"1";s:20:"hideNewLocalizations";s:1:"0";s:13:"prependAtCopy";s:1:"1";s:17:"requireCategories";s:1:"0";s:5:"label";s:5:"title";s:9:"label_alt";s:5:"title";s:10:"label_alt2";s:0:"";s:15:"label_alt_force";s:1:"0";s:11:"treeOrderBy";s:3:"uid";s:21:"categorySelectedWidth";s:1:"0";s:17:"categoryTreeWidth";s:1:"0";s:18:"categoryTreeHeigth";s:1:"5";}';           // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['css_select'] = 'a:2:{s:6:"CSSDIR";s:14:"fileadmin/css/";s:6:"CSSEXT";s:3:"css";}';     //  Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['captcha'] = 'a:21:{s:6:"useTTF";s:1:"0";s:8:"imgWidth";s:3:"110";s:9:"imgHeight";s:2:"35";s:12:"captchaChars";s:1:"6";s:9:"noNumbers";s:1:"0";s:4:"bold";s:1:"0";s:7:"noLower";s:1:"0";s:7:"noUpper";s:1:"0";s:13:"letterSpacing";s:2:"16";s:5:"angle";s:2:"30";s:5:"diffx";s:1:"0";s:5:"diffy";s:1:"6";s:4:"xpos";s:1:"5";s:4:"ypos";s:1:"6";s:6:"noises";s:1:"6";s:9:"backcolor";s:7:"#f4f4f4";s:9:"textcolor";s:7:"#000000";s:11:"obfusccolor";s:7:"#c0c0c0";s:8:"fontSize";s:2:"20";s:8:"fontFile";s:0:"";s:12:"excludeChars";s:14:"gijloGIJLO0169";}';     // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['dam'] = 'a:7:{s:8:"tsconfig";s:7:"default";s:8:"web_file";s:1:"0";s:15:"hideMediaFolder";s:1:"0";s:8:"mediatag";s:1:"1";s:15:"htmlAreaBrowser";s:1:"1";s:5:"devel";s:1:"0";s:13:"file_filelist";s:1:"0";}';   // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['dam_index'] = 'a:2:{s:18:"add_media_indexing";s:1:"1";s:23:"add_media_file_indexing";s:1:"1";}';       //  Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['phpmyadmin'] = 'a:4:{s:12:"hideOtherDBs";s:1:"1";s:9:"uploadDir";s:21:"uploads/tx_phpmyadmin";s:10:"allowedIps";s:10:"10.0.0.144";s:12:"useDevIpMask";s:1:"0";}';          // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['FE']['defaultTypoScript_constants'] = '[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005';          // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['EXT']['extList_FE'] = 'extbase,css_styled_content,install,automaketemplate,tipafriend,rtehtmlarea,indexed_search,t3skin,ric_rotation,tt_news,macina_searchbox,phpmyadmin,feedit,version,dam,air_filemanager,dam_catedit,statictemplates,ve_guestbook,captcha,fluid,workspaces,static_info_tables,formhandler,crawler,realurl,w4x_backup,ics_awstats';               // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['realurl'] = 'a:5:{s:10:"configFile";s:26:"typo3conf/realurl_conf.php";s:14:"enableAutoConf";s:1:"0";s:14:"autoConfFormat";s:1:"0";s:12:"enableDevLog";s:1:"0";s:19:"enableChashUrlDebug";s:1:"0";}';               // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['mm_dam_filelist'] = 'a:4:{s:24:"use_ttaddress_connection";s:1:"0";s:13:"ttaddress_uid";s:2:"-1";s:18:"realurlintegration";s:1:"1";s:14:"useinmixedmode";s:1:"0";}'; // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['INSTALL']['wizardDone']['tx_coreupdates_installsysexts'] = '1';     //  Modified or inserted by TYPO3 Upgrade Wizard.

$TYPO3_CONF_VARS['SYS']['setDBinit'] = '';               // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';   //  Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['EXT']['extConf']['static_info_tables'] = 'a:1:{s:7:"charset";s:5:"utf-8";}';       // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['GFX']['gdlib_png'] = '1';           // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['TTFdpi'] = '96';              //  Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['BE']['versionNumberInFilename'] = '0'; //  Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['image_processing'] = '1';            // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_useStripProfileByDefault'] = '0';           //  Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_negate_mask'] = '1';               //  Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['EXT']['extConf']['crawler'] = 'a:15:{s:9:"sleepTime";s:4:"1000";s:16:"sleepAfterFinish";s:2:"10";s:11:"countInARun";s:3:"100";s:14:"purgeQueueDays";s:2:"14";s:12:"processLimit";s:1:"1";s:17:"processMaxRunTime";s:3:"300";s:14:"maxCompileUrls";s:5:"10000";s:12:"processDebug";s:1:"0";s:16:"crawlHiddenPages";s:1:"0";s:7:"phpPath";s:12:"/usr/bin/php";s:14:"enableTimeslot";s:1:"1";s:11:"logFileName";s:0:"";s:9:"follow30x";s:1:"0";s:18:"makeDirectRequests";s:1:"0";s:16:"frontendBasePath";s:5:"/rpw/";}';             // Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['dr_blob'] = 'a:6:{s:15:"categoryStorage";s:10:"StoragePID";s:18:"enableCounterReset";s:1:"1";s:17:"reallyDeleteFiles";s:1:"0";s:12:"integration.";a:1:{s:14:"indexed_search";s:1:"1";}s:12:"storageType.";a:3:{s:2:"db";s:1:"1";s:2:"fs";s:1:"1";s:4:"fsus";s:1:"1";}s:17:"fileStorageFolder";s:26:"uploads/tx_drblob/storage/";}';        //  Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS['EXT']['extConf']['ics_awstats'] = 'a:5:{s:7:"perlbin";s:13:"/usr/bin/perl";s:17:"disableClearCache";s:1:"0";s:19:"enableDecodeUTFKeys";s:1:"1";s:11:"enableGeoIP";s:1:"0";s:14:"pathToGeoIPDat";s:26:"/usr/share/GeoIP/GeoIP.dat";}';      //  Modified or inserted by TYPO3 Extension Manager.

$TYPO3_CONF_VARS[„FE“][„logfile_dir“] = ‚typo3temp/log/’;

?>

 

17. Speichern Sie die Datei danach wieder unter dem Namen „localconf.php“ im Verzeichnis „RPW‑Umsiedlung/Online/Homepage/typo3conf“ ab.

18. Kopieren Sie jetzt die vorher gesicherten Verzeichnisse aus dem Verzeichnis „RPW‑Umsiedlung/Lokal/Homepage/“ auf den neue Server bei Ihrem ISP, sodass diese die vorhandenen Verzeichnisse ersetzen.
Die „localconf.php“ wird aus dem Verzeichnis RPW‑Umsiedlung/Online/Homepage/typo3conf“ auf den neuen Server in das „typo3conf“ Verzeichnis kopiert.

19. Kopieren Sie jetzt nochmals das Programm „mysqldumper“ auf den ISP Server in das Unterverzeichnis Ihrer TYPO3 Installation unter den Namen „mysqldumper2“. Initialisieren Sie das Programm mit Ihren neuen Zugangsdaten für Ihre neue TYPO3 Installation.

20. Laden Sie die Datei für die Rücksicherung in den „mysqldumper2“ aus dem Verzeichnis RPW‑Umsiedlung/Lokal/DB“ über den Menüpunkt „Verwaltung“ (File Administration).

 

21. Führen im „mysqldumper2“ am neuen Server ein „Widerherstellen“ (Restore) der geladenen Datei „rpw“ durch die Auswahl bei der Rücksicherung durch. Klicken Sie dann auf „Wiederherstellen“ (Restore).



22. Stellen Sie sicher, dass sich jetzt am ISP Server die korrekte „localconf.php“ Datei, welche von Ihnen bearbeite wurde, im Verzeichnis „typo3conf“ auf dem ISP Server befindet. Außerdem müssen Sie sicherstellen wenn Sie RealURL verwenden, das die korrekte „.htaccess“ im Root Verzeichnis der TYPO3 Installation vorhanden ist.

23. Wenn Sie auf die TYPO3 4.6 Version umgestellt haben, müssen Sie noch sicherstellen, dass kein „deprecated“ Variablen wie z.B. „GPvar:“ in TypoScript oder in den Extensions (bei PHP) verwendet werden. Ersetzen Sie in den TypoScripten alle vorkommen von „GPvar:“ durch den Text „GP:“. Bei den Extensions ist es nicht ganz so einfach, entweder es gibt ein Update in Repository oder Sie müssen maneull in den Extension Code eingreifen. Betroffen ist auf alle Fälle die „ve_guestbook“ Extension.

Hinweis  Bevor Sie jetzt beginnen alle Extensions nach dieser Variablen zu durchsuchen, sollten Sie einfach mit Schritt 24. weitergehen. Reagieren Sie dann immer auf die entprechenden Fehler, welche die Verwendung „GPvar“ Variablen hinweisen.

24. Prüfen Sie den Aufruf Ihrer neuen Website.

WICHTIG  Testen Sie die neue Website ausgiebig und fahren Sie erst dann mit Punkt 25. fort, wenn Sie sichergestellt haben, das alles funktioniert. Denn nach Ausführung von Punkt 25. Und 26.  gibt es kein Zurück mehr.

25. Löschen der „_old“ Verzeichnisse funktioniert am schnellsten wenn Sie dies in dem vom ISP zur Verfügung gestellten Online FTP Client ausführen. Sie können jetzt auch die „mysqldumper“ Verzeichnisse auf dem ISP Server löschen.

26. Löschen Sie jetzt die alte Datenbank vom ISP Server.



27. Wenn es Ihr ISP ermöglicht können Sie vieleicht auch noch einige PHP Parameter einstellen.



28. Die Übersiedlung ist somit abgeschlossen.

 

Hinweis  Für eine Übersiedlung von einem ISP Server auf einen lokalen Server, oder von einen ISP auf einen anderen ISP Server, ändern Sie einfach die Reihenfolge dieser Anleitung und drehen Sie ggf.die Verzeichnisse „Online“ und Lokal“ um, sodas diese Ihrer Konfiguration entspricht.

 

13.2    Fehler nach Übersiedlung der Website

13.2.1        Fehler nach beim Bearbeiten im RTE

 

13.2.1.1       Fehler bei Login in das Backend kommt „No authentication methods available.“

 

Nach der Übersiedlung wird beim Login ins Backend nach Eingabe vom Benutzername und Passwort folgende Meldung angezeigt.

 

 

Ursache:

Diese Meldung wird immer dann angezeigt wenn in Ihrer alten TYPO3 Installation keine verschlüsselten Passwörter verwendet wurden. Die neue TYPO3 Installation anhand der „localconf.php“ Datei aber eine soche fordert.

 

Abhilfe:

Bearbeiten Sie nochmals die lokale „localconf.php“ Datei und entfernen Sie vorerst die Zeilen für die Extension „saltedpassword“ Einträge:

#$TYPO3_CONF_VARS['EXT']['extConf']['saltedpasswords'] = 'a:2:{s:3:"FE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}s:3:"BE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}}';

#$TYPO3_CONF_VARS['BE']['loginSecurityLevel']  = 'rsa';

#$TYPO3_CONF_VARS['FE']['loginSecurityLevel']  = 'rsa';

 

Danach die Datei nochmals auf den ISP Server unter das Verzeichnis „typo3conf“ hochladen.

Versuchen Sie sich nochmals einen Login ins Backend, der sollte wieder funktionieren.

 

 

13.2.1.2       Fehler beim Aufruf der Backend Website wird diese nicht richtig angezeigt

 

Nach der Übersiedlung der TYPO3 Website wird der Backend Login auf dem neuen Server ohne Formatierung angezeigt:

 

oder nach dem Login:

 

 

Abhilfe:

Löschen Sie auf dem neuen Server das Verzeichnis „compressor“, welches sich im Unterverzeichnis „typo3temp“ befindet.

 

 

13.2.1.3       Fehler im Forntend wird nur eine leere weiße Seite angezeigt

 

Nach der Übersiedlung wird auf dem neuen Server im Frontend nur eine leere weiße Seite angezeigt. Im Quellcode der Seite ist folgendes enthalten:

 

<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE html

     PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">

<head>

 

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<!--

       This website is powered by TYPO3 - inspiring people to share!

       TYPO3 is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.

       TYPO3 is copyright 1998-2011 of Kasper Skaarhoj. Extensions are copyright of their respective owners.

       Information and contribution at http://typo3.com/ and http://typo3.org/

-->

 

<base href="http://www.realpowerwork.com/" />

 

<title>Home</title>

<meta name="generator" content="TYPO3 4.6 CMS" />

<meta name="KEYWORDS" content="Downloads,Themenlinks,Bereich,RealPowerWork,Open,Source,area,News,information,TYPO3,Lotus,programs,Hier,Freeware,will,Dokumente,Notes,Linux,free,publications,Informationen,trademarks,Software,Veröffentlichungen,source,freeware,open,kostenlosen,provision,commercial,there,Behind,previous,descriptions,tricks,these,goal,tipps,background,plans,developed,project,part,themselves,download,mentioned,companies,respective,their,documents" />

<meta name="DESCRIPTION" content="Software Evaluation, Programming, Anleitungen, Downloads" />

 

<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_fad97d0aa7.css?1321710359" media="all" />

<link rel="stylesheet" type="text/css" href="fileadmin/templates/css/ve_guestbook.css?1321711330" media="screen" />

<link rel="stylesheet" type="text/css" href="fileadmin/templates/css/air_gallery.css?1321711324" media="screen" />

<link rel="stylesheet" type="text/css" href="fileadmin/templates/css/rpw.css?1321711327" media="screen" />

<link rel="stylesheet" type="text/css" href="fileadmin/templates/css/printversion_content.css?1321711326" media="print" title="Druck-Stylesheet" />

 

 

 

<script src="typo3temp/javascript_8d985c2683.js?1321710359" type="text/javascript"></script>

 

 

 

</head>

<body>

 

 

 

 

</body>

</html>

 

 

Ursache:

Rufen Sie uber Ihren Website URL und den Anhang „/typo3/install“, das TYPO3 Install Tool auf. Gehen Sie auf den Menüpunkt „Database Analysis“ und danach auf „COMPARE“.

 

 

Bestätigen Sie die angezigten Update mit „Write to database“.

 

Jet kommt erst die Anzeige des eigentlichen Fehlers. Und zwar  sind dies Tabellen die in der Imprtierten Datenbank als „InnoDB“ definiert waren aber nun als „MyISAM“ angelegt sind.

 

 

Klicken Sie nochmals auf die Schaltfläche „Write to database“ wenn der Fehler bestehen bleibt erlaub der ISP nicht das auf dem Server die „InnoDB“ Engine verwendet wird.

 

Die Website wird danch zwar wieder angezeit aber mit einigen Fehlern. In manchen Azeigen sind keine Umlaute oder Sonderzeichen vorhanden.

 

Abhilfe:

Entweder Sie sorgen dafür das in Ihrer TYPO3 Installation welche für die Rücksicherung verwendet wurde, keine Verwednung „InnoDB“ Engine erfolgt, oder Sie wechseln den ISP auf  einen der Ihnen auch erlaubt „InnoDB“ Tabellen anzulegen.

 


13.2.1.4       Fehler beim Aufruf  der Frontend Website ist das Design (CSS) zerstörrt

 

Die Website wurde von einem Domänennamen auf einen anderen Domänennamen umgestellt. Auf der alten Website war „RealURL“ (mode_rewrite) aktiviert.

 

 

Abhilfe:

Kontrollieren Sie zuerst einaml die Berechtigune auf das Verzeichnis „filadmin“ in welchen die HTML Templates und CSS Dateien abgelegt sind. Eventuell kann der Server darauf nicht zugreifen. Rufen Sie die HTML Tempalte oder die CSS Datei einmal direkt mit dem kompletten Namen auf.

Kontrollieren Sie ob bei der Rücksicherung ein Verziechnis wie z.B. „uploads“ vergessen wurde. Das fehlerhafte Design könnte auch durch das fehlen Bilder zustandekommen.

 

13.2.1.5       Fehler anstatt der Sprachumschaltung (Flaggen) wird die Seitentitel angezeigt

 

Der Text wechselte, je nach Menüauswahl, auf die jeweiligen Übersetzungen vom Seitentitel.

 

 

Ursache:

Im Quellcode vom HTML sieht man dass die Links folgenderweise erstellt werden.

<!--end headlines -->

<div id="lang_switch"><img src="typo3temp/menu/4505c9abec.png" width="25" height="17" border="0" alt="Home" /><a href="en.html"><img src="typo3temp/menu/c457d2bfec.png" width="25" height="17" border="0" alt="Home" />

 

Es werden sollten hier die Bilder im Verzeichnis „typo3temp/menu/“ generiert werden. Es zeigte sich aber, dass anch dem löschen aller Dateien in diesem Verzeichnis keine neuen Dateien angelegt wurden. Daher wurde immer nur der „alt“ Text für die Links angezeigt.

 

 

Abhilfe:

Setzen Sie den Besitzer auf das Verzeichnis „typo3temp“ für den Apache Server Benutzer:
„chown –R wwwrun:ftp typo3temp“

Kontrollieren Sie auch ob Schreiberechtigungen vorhanden sind:

„chmod –R 770 typo3temp“

 

 

13.2.1.6       Fehler die Sprachumschaltung wir mit komischen Flaggensymbolen angezeigt

 

Nach der Übersiedlung auf einen neuen Server wird die Sprachumschaltung mit seltsamen nicht erkennbaren Flaggensymbolen angezeigt.

 

 

 

Abhilfe:

Der Fehler konnte durch eine Änderung des Aufrufs der Flaggensymbole behoben werden.

 

############ Menü für Sprachumschaltung ##################

temp.langmenu = COA

temp.langmenu {

  10 = HMENU

  10 {

    # deutsch und englisch

    special = language

    special.value = 0,1,3

   

    1 = GMENU

    1 {

      noBlur = 1

      NO = 1

      NO {

        XY = [10.w]+4,[10.h]+4

        backColor = white

        10 = IMAGE

        10.file = EXT:cms/tslib/media/flags/flag_de_f.gif || EXT:cms/tslib/media/flags/flag_uk_f.gif || EXT:cms/tslib/media/flags/flag_es_f.gif

10.file = EXT:cms/tslib/media/flags/flag_de.gif || EXT:cms/tslib/media/flags/flag_uk.gif || EXT:cms/tslib/media/flags/flag_es.gif

        10.offset = 2,2

      }

      ACT < .NO

      ACT {

        10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif

        noLink = 1

        #backColor = #ff0000

      }

      USERDEF1 < .NO

      USERDEF1 {

        10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif

      }

      USERDEF2 < .ACT 

    }

  }

}

 

 

13.2.1.7       Fehler die Flaggensymbolen für die Sprachumschaltung werden nicht mehr angezeigt

 

Nach Umstellung der Website auf einen neuen Server werden die Flaggensymbole für die Sprach umschaltung nicht mehr angezeigt.

 

Anstatt der Flaggen wir nichts angezeigt.

 

 

 

Abhilfe:

Öffnen Sie das TYPO3 Install Tool und kontrollieren Sie unter „All Configuration“ ob die Option „image_processing“ aktiviert ist.

 


Sollte dies nicht helfen, kontrollieren Sie die Grafikfunktionen vom System wie unter Kapitel „8.4 TYPO Grafiktest durchführen“ erklärt.

 

 


13.2.1.8       Fehler nach Aufruf vom Install Tool kommt „Warning: Division by zero in…“ und Login ist nicht möglich.

 

Nach der Übersiedlung vom Server ist kein Login in das Install Tool möglich.

 

 

Abhilfe:

Kopieren Sie aus Ihrer lokalen „localconf.php“ Datei in welcher Sie das Install Tool Kennwort kennen die Zeile in die „localconf.php“ Datei auf dem ISP Server. Die vorher vorhandene Zeile wird einfach remarked.

#$TYPO3_CONF_VARS['BE']['installToolPassword'] = '123456068bd6b5e26ddd420bcb8f9d7f';

$TYPO3_CONF_VARS['BE']['installToolPassword'] = '3067bc5fc99d38a484a98edfc351b8a6';

 

Kopieren Sie die Datei wieder auf den ISP Server in das „typo3conf“ Verzeichnis.

Danach können Sie das gewohnte Kennwort in das Install Tool eingeben.

 

 

13.2.1.9       Fehler im BE kommt „Fatal error: Allowed memory size…“

 

Fatal error: Allowed memory size of 32505856 bytes exhausted (tried to allocate 35 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 79

 

Abhilfe:

Stezen Sie im TYPO3 Install Tool den Wert für „[SYS][setMemoryLimit]“ auf „64“ und versuchen Sie nochmlas den Aufruf indem Sie den Browser aktualisieren.

 

 

13.2.1.10    Fehler  „Warning: Division by zero in /“home/.sites/112/site415/typo3conf/localconf.php on line 87“

 

Warning: Division by zero in /“home/.sites/112/site415/typo3conf/localconf.php on line 87

 

oder

 

 

oder

 

Warning: Division by zero in /home/.sites/112/site415/web/typo3conf/localconf.php on line 87

Warning: Division by zero in /home/.sites/112/site415/web/typo3conf/localconf.php on line 87

Beschreibung: TYPO3 logo

Oops, an error occurred!

TYPO3 is an open source content management system. To maintain the quality of the system and to improve it, please help us by donating. TYPO3 CMS. Copyright © 1998-2011 Kasper Skårhøj. Extensions are copyright of their respective owners. Go to http://typo3.com/ for details. TYPO3 comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. Obstructing the appearance of this notice is prohibited by law.

 

Abhilfe:

In die Date „localconf.php“  im Verzeichnis „typo3conf“ hatte sich eine Fehlerhafte Zeile eingeschlichen:
$TYPO3_CONF_VARS[„FE“][„logfile_dir“] = ‚typo3temp/log/’;

 

Der korrekte Eintrag ist:
$TYPO3_CONF_VARS['FE']['logfile_dir'] = 'typo3temp/log/';

 

 

 

13.2.1.11    Fehler Umlaute und Sonderzeichen auf der neuen Website werden nicht angezeigt

 

Im Frontend werden Umlaute und Sonderzeichen von Menüs und Texten immer mit zwei Zeichen angezeigt z.B „ü“ mit „ü” oder “Ä” mit “Ä”

 

 

Ursache:

Eine Ursache könnte sein, dass Sie über das TYPO3 Install Tool oder direkt in die „localconf.php“ die Option „[SYS][setDBinit]“ mit folgende Einstellungen vorhanden ist:

SET NAMES utf8;

SET CHARACTER SET utf8;

SET SESSION character_set_server=utf8;

 

Obwohl die lokale TYPO3 Installation mit „utf-8“ Zeichensatzt betrieben wurde, dürfte jetzt auf dem neuen Server diese Einstellung Probleme bereiten.

 

Abhilfe:

Gehen Sie in das TYPO3 Install Tool die Einträge aus dem Feld „[SYS][setDBinit]“.

 

Das entspricht zwei Einträgen welche Sie auf leer setzen in der „localconf.php“ im Verzeichnis „typo3conf“ und versuchen Sie nochmals den Aufruf der Webseite und aktualsieren Sie den Browser mit <F5>:

 

$TYPO3_CONF_VARS['SYS']['setDBinit'] = '';  

 

Löschen Sie alle Caches (besonders die Dateien „temp_CACHED_*“) und Testen Sie die Website danach nochmals, ggf. müssen Sie den Browser mit <F5> aktualisieren.

 

Sehen Sie dazu auch das Kapitel „6.4.1.14 Fehler nach nach Konvertierung zu ‚utf8‘ werden Umlaute und Sonderzeichen immer mit zwei Zeichen angezeigt“.

 

 

13.2.1.12    Fehler  „Allowed memory size of … bytes exhausted tried to allocate x bytes)…“

 

Fatal error: Allowed memory size of 26214400 bytes exhausted (tried to allocate 2 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 146

 

Ursache:

Eventuell ist in der Datei „localconf.php“ im Verzeichnis „typo3 conf“ kein Eintrag für das Memory Limit vorhanden, oder der Eintrag für das Memory Limit ist zu klein z.B.:
$TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = '25';         // Modified or inserted by TYPO3 Install Tool.

Abhilfe:

Folgenden Eintrag in der localconf.php“ ändern

 

$TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = '64';

 

Natürlcih muss auch sichergestellt sein das in der „php.ini“ die Einstellung „memory_limit“ auf den Wert „64M“ steht.

 

13.2.1.13    Fehler beim Aufruf von Tip-A-Friend wir nur eine leer Seite angezeigt

 

Nach der Umstellung auf den neuen Server mit TYPO3 V4.6.x wird bei klicken auf den Tip-A-Friend Link immer nur eine leer Seite angezeigt. Unter TYPo3 V4.5.x funktioniert die Anzeige der Tip-A-Friend Seite mit den gleichen Einstellungen normal.

 

Ursache:

In der Tip-A-Friedn Extension (tipafriend) V1.2.4 wir eine depricated Funktion („makeInstanceClassName“) verwendet. Außderm wird die Plugin nicht mher richtig registriert. Da es noch keine neue Version diese Extension gibt muss der Fehler manuell korrigiert werden.

 

Abhilfe:

In der Datei „class.tx_tipafriend“ muss die depricated Funktion (Zeile 329)

$cls=t3lib_div::makeInstanceClassName('t3lib_htmlmail');

durch die neue Funktion ersetzt werden

$cls=t3lib_div::makeInstance('t3lib_htmlmail');

 

Zusätzlich noch im Root Template Setup-Bereich folgendes Eintragen:

# Bugfix Tip-A-Friend für TYPO3 V4.6

tt_content.list {

    20 {

        11 = CASE

        11.key.field = layout

        11.0 =< plugin.tipafriend

    }

}

 

# Button für die Funktion Tip-A-Friend

temp.tipafriend = COA

temp.tipafriend {

 

 

13.2.1.14    Fehler  eingefügte Bilder im RTE Text werden nicht angezeigt

 

Nach einem Update auf die TYPO3 Version 4.5.x werden die Bilder, welche direkt im RTE eingefügt wurden nicht angezeigt.

 

Ursache:

Die Bilder wurden nicht angezeigt, wenn Sie direkt ohne anderen Text innerhalb eines <p> Tags stehen. Dies ist ein bekannter Bug.

 

Abhilfe:

Siehe http://bugs.typo3.org/view.php?id=17373

 

 

13.2.1.15    Fehler „Warning: date(): Ist not safe to relay on the systems’s timezone settings.“

 

Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /srv/www/htdocs/typo3_src-4.5.15/t3lib/class.t3lib_div.php on line 6035

 

Behebung:

Geben Sie in der „php.ini“ die Timzone-Einstellung an:

„vi /etc/hph5/apache2/php.ini“

 

Parameter:
„date.timezone = Europe/Berlin“

 

 

13.2.1.16    Fehler „Fatal error: Cannot re-assign $this in…class.tx_staticinfotables_syslanguage“

 

Diese Fehler erscheint wenn im Backend im Root Template Setup Bereich einer Änderung durchgeführt wird. Die Seite wurd vorher von einem anderen Server übernommen und lief noch auf TYPO3 V4.2.x

 

Fatal error: Cannot re-assign $this in /srv/www/htdocs/cms/typo3conf/ext/static_info_tables/class.tx_staticinfotables_syslanguage.php on line 41

 

Behebung:

Gehen Sie in den Extension manager und führen mit „Check for extension updates“ ein Update alle aufgelisteten Extension durch. Führen Sie danahc noch im TYPO3 Install Tool ein „COMPARE“ der Datenbank aus. Versuchen Sie danach nochmals die Änderung im Root Template Setup-Bereich durchzuführen.

 

13.2.1.17    Fehler „The requested page didn’t have a proper connection to the tree-root!“

 

 

 

Behebung:

Führen Sie nochmals im TYPO3 Install Tool ein „COMPARE“ der Datenbank aus. Sollten Sie einen Fehler mit „$GLOBALS[‚LANG‘]“ erhalten suchen Sie im Internet nach einer Lösung.

 

 

 


14    Sicherheitseinstellungen für TYPO3

14.1    TYPO3 absichern

Eine gute Anleitung für das Absichern einer TYPO3 Installation gibt es auf der Website:

http://www.workshop.ch/openmind/2011/06/14/typo3-security-checklist-aktualisiert/#comment-83692

 

14.1.1        TYPO3 Install Tool sichern

WICHTIG  Das Passwort für das TYPO3 Install Tool sollte, sosfort bei der Installation geändert werden. Das Passwort soll mit keinem anderen verwendeten Passwort auf diesen Server übereinstimmen, sondern nur für TYPO3 verwendet werden.

 

Wenn Sie auf Nummer sicher gehen wollen, dass niemand das Install Tool verwenden kann, empfiehlt es sich das ganze Verzeichnis „install“ aus den „typo3_src-4.5.15/typo3/“ entweder umzubenennen oder zu entfernen und an einem sicheren Ort abzulegen.

Wenn Sie dann später Änderungen über das TYPO3 Install Tool durchführen wollen, dann müssen Sie diese Verzeichnis zuerst wieder auf den ursprünglichen Namen umbenennen oder wieder in den richtigen Pfad „typo3_src-4.5.15/typo3/“ zurückkopieren.

 

14.1.2        Einstellungen im TYPO3 „Install Tool“

 

1.    Wählen Sie den Menüpunkt „All configuration“.

2.    Setzen Sie den Parameter „displayErrors“ auf „0“ damit keine PHP Error auf der Website ausgegeben werden

 

  WICHTIG  Install Tool nach der Durchführung von Einstellungen immer deaktivieren nicht vergessen.

 

14.1.3        Standard „admin“ Konto absichern

 

Ändern Sie den Benutzernamen „admin“ auf einen Namen Ihrer Wahl, damit dieser nicht erraten werden kann. Zusätzlich beachten Sie die Empfehlungen zur Vergabe eines sicheres Passwortes.

 

14.1.4        Immer aktuelle Source Dateien für TYPO3 Core verwenden

Verwenden Sie für Ihre TYPO3 Installation immer die aktuellsten TYPO3 Source Dateien. Das TYPO3 Source Team veröffentlicht immer nach Bekanntwerden von Sicherheitslücken eine sogeannten „Maintenance“ Version vom den TYPO3  Source Paket. Auch diese Update sollten so zeitnah wie möglich installiert werden.

 

14.1.5        Passwort Sicherheit erhöhen mit „saltedpassword“

Da die normale Verschlüsselung von Passwörten mit MD5 nicht mehr als ausreichend sicher betrachtet wird, empfiehlt sich der Einsatz von „saltedpassword“,

Siehe dazu Kapitel „9.1 Passwort Sicherheit erhöhen („saltedpassword)“.

 

14.1.6        Unnötige Extension von TYPO3 löschen

Löschen Sie alle Extensions aus Ihrer TYPO3 Installation welche Sie nicht verwenden. Jede zusätzliche aktivierte Extension kann, wenn diese nicht gewartet wird ein Sicherheitsproblem darstellen.

 

14.1.7        Verwenden Sie nur geprüfte Extension

Verwenden Sie wenn möglich nur Extension mit dem Status „Stable“ oder „Beta“. Diese wurden schon einer Sicherheitsüberprüfung unterzogen. Vermeiden Sie die Verwendung von Extension welche den Stauts „Alpha“ oder sogar „Experimetal“ besitzen.

14.1.8        Immer die aktuellsten Extension von TYPO3 verwenden

Achten Sie darauf, dass es immer wieder Sicherheitsupdates von Extension (Security Monitoring)  gibt. Bei einem Sicherheitsupdate einer Extension sollte Sie zeitnah das Update dieser Extension in Ihrer TYPO3 Installation vornehmen.

 

Führen Sie eine Internetsuche betreffend Ihrer verwendete Extension und schon bekannter Sicherheitsprobleme durch oder Abonnieren Sie sich die vom TYPO3 Security Team (http://typo3.org/teams/security/) publizierten neu entdeckten Sicherheitslücken.

 

14.1.9        Backend-Logins überwachen

TYPO3 bietet die Möglichkeit Backend-Logins per E-Mail an einen Administrator zu melden. Dadurch erhält man Hinweise auf missbräuchliche Zugriffe oder auf Eindringversuche.

 

Ändern Sie dazu im TYPO 3 Install Tool folgende Einstellungen:

 

['BE']['warning_email_addr'] = typo3admin@mydomain.com

['BE']['warning_mode'] = 1

 

In der BE bei „Benutzer“ und „Einstellungen“ können Sie dann für jedem Benutzer festlegen ob eine Email versendet werden soll.

 

14.1.10    Die Konfigurationsdatei „localconf.php“ absichern

Sie können die vorhandene “typo3conf/locallang.php” Datei an eine Position außerhalb des Root Verzeichnisses des Webservers transferieren. In der alten “typo3conf/locallang.php” Datei wird nur ein absoluter Verweis auf die Position originale Datei eingetragen. Manche Argumentationen bezeichnen das Vorhandensein der Konfigurationsdatei im Webroot als Sicherheits Problem.

 

Erzeugen Sie eine Datei z.B. "/home/mydir/localconf.php" und kopieren Sie Ihre Konfiguration in diese Datei. Dann ändern Sie die alte "typo3conf/localconf.php" auf folgende Einträge um:

 

<?php

     require("/home/mydir/localconf.php");

?>

 


14.2    Apache Webservers absichern

14.2.1        Deaktivieren Sie die Auflistung von Verzeichnissen

Deaktivieren vom "Directory listing" des Webservers oder alternative eine leere "index.html" in die Verzeichnisse “uploads/“, „typo3conf/“ oder „fileadmin/“. Damit können Website Benutzer die TYPO3 Verzeichnisse nicht mehr auflisten (browse).

 

14.2.2        Entfernen von unnötigen Paketen vom Server

Folgende Pakte können nach Durchführung alle Installationen entfernt werden:

apache2-devel, mysql-devel, libpng-devel, gcc, autoconf, mak, automake, bison, flex,xdevel und patch

 

Hinweis  Im Prinzip stellen alle „devel“ Pakete und das Vorhandensein eines Compilers wie „gcc“ ein Sicherheitsproblem dar, welches für Angriffe genutzt werden kann. Wenn Sie auf Nummer sicher gehen wollen entfernen Sie den Compiler und alle „devel“ Pakete wieder vom Server.

 

14.3    PHP absichern

Schalten Sie die Error Ausgabe von PHP Fehlern ab, damit keine Systeminformationen den normalen Benutzern angezeigt werden. In einen Entwicklungssystem sollte Sie der “display_error” wider eingeschaltet werden.

 

log_errors = On

display_errors = Off

 

Zusätzlich kann “open_basedir” und “safe_mode” für den Server eingeschaltet werden. Bei den meisten gehosteten Sites ist dies vom Hosting Provider konfiguriert.

 

14.4    MySQL absichern

 

Verwenden Sie für die TYPO3 Datenbank nicht normalen Super User („root“) der MySQL Datenbank (der alles darf). Legen Sie einen User in der MySQL Datenbank an, der nur die TYPO3 zugehörige Datenbank sehen und bearbeiten darf d.h. es muss eine Zuordnung zur Datenbank geben. Zusätzlich legen Sie einen eigenen Benutzer in MySQL für den „phpMyAdmin“ an, der auch alle TYPO3 Datenbank verwalten darf.

 

Hinweis  Sie können den „phpMyAdmin“ auf einem lokalen Server auf zwei verscheiden Arten installieren. Als seperates Linus Programmpaket oder als TYPO3 Extension. Wenn sich Ihre TYPO3 Site bei einem Internet Service Provider (ISP) befindet wird der „phpMyAdmin“ meist vom ISP über eine Website zur Verfügung gestellt.

 

14.4.1        Installation von phpMyAdmin als Extension

 

Sollten keine externe „phpMyAdmin“ Verwaltung zur Verfügung stehen, können Sie diesen auch als TYPO3 Extension installieren.

 

User in MySQL für den phpMyAdmin an der auch nur wieder die TYPO3 Datenbank verwalten darf. Zuletzt wird phpMyAdmin auf die „Cookie Authentication“ umgestellt. Damit ist der eingeloggte Benutzer in der Lage seine zugeordnete Datenbank zur Bearbeitung anzuzeigen.

 

Zur Erhöhung der Sicherheit geben Sie in das Feld „Allowed IPs“ die IP-Adressen ein von welchen ein Zugriff auf „phpMyAdmin“ erlaubt werden soll. Wenn Sie nur einen lokalen Zugriff am Server erlauben wollen geben Sie „127.0.0.1“ (für IPv6 „::1“) ein.

 

 

 

14.4.1.1       Fehler „phpMyAdmin“ im Backend „Cannot start session without errors“

 

 

Abhilfe:

Gehen Sie in den „Extension Manager“. Wählen Sie die Extension „phpMyAdmin“ aus und führen nochmals „Aktualsieren“ aus.

 

14.4.2        MySQL Rechtekonzept mit phpMyAdmin

 

1.    Einen Super User für MySQL einrichten der alles darf. Dieser Super User sollte nur selten benutzt werden und ganz sicher nicht von TYPO3.

2.    Wenn Sie „phpMyAdmin“ als externe Anwendung verwenden, sollten Sie noch einen Benutzer anlegen der alle die „mysql“ Datenbanken verwalten darf. Dieser Benutzer wird als „phpMyAdmin“ Benutzer bezeichnet. Der Benutzer besitz aber sonst keine Rechte auf andere Datenbanken.

3.    Pro TYPO3 Datenbank wird jeweils ein Benutzer mit den Anmeldinformationen für TYPO3 ersetllt (wird in „localconf.php“ eingetragen).  Diese Benutzer sollten aber nur Rechte auf zugehörige Datenbank dieser TYPO3 Instanz haben.

 

Aufruf von „phpMyAdmin“ als externe Anwnedung mit Eingabe von folgenden URL:

http://localhost/dimpa

 

Hinweis  Wobei „dimpa“ hier für das Verzeichnis steht in welchen Sie Ihren phpMyAdmin installiert haben. Sie sollten für das Verzeichnis generell  nicht „phpMyAdmin“ verwenden, da dieses Verzeichnis immer wieder bei Attacken von Hackern verwendet wird.

 

 

14.4.2.1       Neuen Benutzer für „phpMyAdmin“ anlegen

 

Dieser Benutzer ist nur notwendig wenn Sie den „phpMyAdmin“ als externe Anwendung ausführen. Der Benutzer darf die „mysql“ Datenbanken verwalten und neue Benutzer anlegen sowie Berechtigungen vergeben. Er besitzt aber keine Rechte auf die einzelnen TYPO3 Datenbanken.

 

Gehen Sie dazu in den „phpMyAdmin“ und führen Sie folgendes aus:

 

1.    Wählen Sie aus den angezeigten Menüpunkten auf der Startseite „Rechte“ aus.

2.     Klicken Sie auf den Menüpunkt „Neuen Benutzer anlegen“.



3.    Geben Sie einen Benutzer wie z.B. „pmauser“ als Host „localhost“ und ein sicheres Passwort für den Benutzer ein.

4.    Lassen Sie „Datenbank für den Benutzer“ auf „Kein(e)“ stehen und vergeben Sie keine globalen Rechte für diesen Benutzer.

5.    Klicken Sie auf „Erzeuge Benutzer

6.    Gehen Sie unter Aktionen bei diesen Benutzer auf „Rechte ändern“.

7.    Wählen Sie unter „Datenbankspezifische Rechte“ im DrowpDown Feld die Datenbank „mysql“ aus.

8.    Wählen Sie bei den Berechtigungen „Alle auswählen“ aus.

9.    Kliecken Sie danch unter dieser Rubrick auf „Ok“.

 

14.4.2.2       Neuen MySQL Benutzer für TYPO3 anlegen

 

Gehen Sie dazu in den „phpMyAdmin“ und führen Sie folgendes aus:

 

10. Wählen Sie aus den angezeigten Menüpunkten auf der Startseite „Rechte“ aus.

11. Klicken Sie auf den Menüpunkt „Neuen Benutzer anlegen“.

Geben Sie einen Benutzernamen wie z.B. „bfdt3db“ für diesen Benutzer ein.

Hinweis  Den Benutzernamen so wählen, dass er nicht einfach zu erraten ist. Das heißt nicht einfach „typo3“ oder dergleichen verwenden.

Bei der Auswahl „Host:“ wählen Sie „localhost“ aus.
Geben Sie in die beiden nächsten Felder das Passwort für den Benutzer ein.



12.  Lassen Sie die Auswahl „Datenbank für Benutzer“ auf „Kein(e)“ stehen.



13.  Klicken Sie unter der Rubrik „Globale Rechte“ nichts an.



14. Klicken Sie auf „Erzeuge Benutzer“ damit der Benutzer angelegt wird.

15.  Wählen Sie bei dem Benutzer die Aktion „Rechte ändern“ aus.



16. Geben Sie zur der Rubrik „Datenbankspezifische Rechte“. Wählen Sie im DrowDown Feld bei „Rechte für folgende Datenbank hinzufügen“ den Namen Ihrer Datenbank aus, auf welche dieser Benutzer Zugriff erhalten soll.



17. Erscheint danach gleich das Fenster zur Vergabe der Berechtigunge auf diese Datenbank. Vergeben Sie die Berechtigungen so wie in der Abbildung angezeigt.



Hinweis  Die Berechtigung „DROP“ wurde hier bewußt nicht vergeben da der normale Backend Benutzer nachdem die TYPO3 Installation fertiggestellt wurde keine Berechtigun braucht um Tabelle zu entfernen.

18. Klicken Sie danach auf das „Ok“ das sich unterhalb dieser Rubrik befindet.

19. Klicken sie jetzt nochmals in der Haupauswahl auf „Rechte“. Wählen Sie den neuen Benutzer aus und klciken Sie auf „Rechte ändern“. Sie sollten jetzt unter „Datenbankspezifische Rechte“ folgendes sehen.



20. Der Benutzer besitzt jetzt nur spezielle Rechte auf diese Datenbank.

 

 

14.4.2.3       Neuen Datenbankbenutzer in TYPO3 unter „localconf.php“ eintragen

 

Öffnen Sie die Datei „typo3conf/localconf.php“ suchen Sie die unten angeführten Optionen und ändern Sie den Benutzernamen und das Passwort auf den vorher angelegten Benutzer um:

„$typo_db_username = ‚ bfdt3db’;“

„$typo_db_host = ‚localhost’;“

„typo_db_password = ‚password’;“

 

Damit benutzt TYPO3 diesen Benutzer für den Zugriff auf die MySQL Datenbank.

 

Hinweis  Ersetzen Sie den Text „passwort“ und vergeben Sie pro Datenbank immer ein eigenes Passwort, dass den Empfehlungen für einen ausreichende Passwortsicherheit entspricht.

 

14.4.3        phpMyAdmin – Authentication Method

 

Suchen Sie die Datei „config.inc.php“ im Verzeichnis „/srv/www/htdocs/phpmyadmin/“ (je nach Installation unterschiedlich).

Machen Sie von dieser Datei eine Sicherheitskopie.

Öffnen Sie die Datei „config.inc.php“

Setzen Sie in der Konfigurationsdatei den absoluten URL des Servers (oder alternativ die Warnung ausschalten).

„$cfg[‚PmaAnbsoluteUri’] = http://<hostname>/phpMyAdmin’

 

Es gibt für phpMyAdmin drei Authentication Methoden:

config: phpMyAdmin kann nur mit einer Userkennung arbeiten. Username und Passwort stehen im Klartext in der „config.inc.php“.

http: Konfiguration der Zugangsbeschränkung über Apache mit „.htaccess“ und MySQL

cookie: Konfiguration der Zugangsbeschränkung über Apache, MySQL und Cookies. Genau so sicher wie „http“, funktioniert aber besser mit diversen Browsern. Der Vorteil dieser Methode ist verschiedene User können flexible im MySQL angelegt werden und sich durch phpMyAdmin authentisieren. Die Rechtevergabe erfolgt und kontrolliert MySQL. Das Programm phpMyAdmin selbst, authentisiert sich gegenüber von MySQL als ein User, der so gut wie keine Rechte (außer auf die TYPO3 Datenbank) hat.

 

14.4.4        phpMyAdmin – Konfiguration mit „Cookie Authentication“

 

MySQL Passwort des Users „phpMyAdmin“ in phpMyAdmin eintragen in die Datei „…/lampp/phpmyadmin/config.inc.php“:

 

$cfg[‚Server’][$i][‚controluser’] = ‚pmauser’;

$cfg[‚Server’][$i][‚controllpassword’] = ‘password’;

$cfg[‚Server’][$i][‚auth_type’] = ‘cookie’;

$cfg[‚Server’][$i][‚user’] ) = ‘’;

$cfg[‚Server’][$i][‚password’] = ‘’;

 

Hinweis  Damit wird das Programm “phpMyAdmin” gegenüber von MySQL mit dem User “pmauser” authentifiziert. Der Benutzer „pmauser“ besitzt so gut wie keine Rechte (auf die Anwendungs-Datenbanken), sondern nur auf die Datenbank „mysql“ und „phpmyadmin“.


15    PHP Programmierung

15.1    TYPO3 Skripte und Datenbankzugriff

15.1.1        Nicht mehr unterstützter Datenbanzugriff für neu TYPO3 Versionen

 

Hier wurde z.B. im TYPO3 Setup Bereich eine PHP-Skript Datei geladen:

 

page.30.file = fileadmin/templates/scripts/lang_menu.php

 

Inhalt der PHP-Datei:

// First, select all pages_language_overlay records on the current page. Each represents a possibility for a language.

$query = "SELECT * FROM pages_language_overlay WHERE pid=".$GLOBALS["TSFE"]->id.$GLOBALS["TSFE"]->sys_page->enableFields("pages_language_overlay")." GROUP BY sys_language_uid";

 

Hier wird ein direkter „SELECT * FROM pages_language_overlay…“ durchgeführt. Dies sollte in der neuen Version nur mehr über „SELECTquery“ erfolgen.

 

Abhilfe:

Bearbeiten sie die alte SQL Abfrage nach folgendem Schema damit diese von einer neuen TYPO3 Version akzeptiert wird:

 

// SELECT:
$query = $GLOBALS['TYPO3_DB']->SELECTquery(
'*', // SELECT ...
'mytable', // FROM ...
'uid=123 AND title LIKE "%blabla%"', // WHERE...
'', // GROUP BY...
'title', // ORDER BY...
'5' // LIMIT ...
);
$res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db, $query);

 

Dies würde als Ergebnis für die alte PHP Datei folgendes ergeben:

// First, select all pages_language_overlay records on the current page. Each represents a possibility for a language.

$query = $GLOBALS['TYPO3_DB']->SELECTquery('*', 'pages_language_overlay','pid=”.$GLOBALS[“TSFE”]->id.$GLOBALS[“TSFE”]->sys_page->enableField(“pages_language_overlay”).”,’sys_language_uid',’’,’’);

$res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db, $query);

 

15.2    TYPO3 Objektzugriffe unter PHP

15.2.1        Zugriff auf „uid“ oder „pid“ vom PHP

 

$this->cObj->data['uid']
ist die uid vom aktuellem Content-Objekt.

$GLOBALS["TSFE"]->id
ist die uid der aktuellen Seiten,
sollte normalerweise ident sein mit:
$this->cObj->data['pid']

 

15.2.2        Zum Auslesen der pids gibt es eine eigene Funktion


$pidList = $this->pi_getPidList($this->cObj->data['pages'],$this->conf["recursive"]);

 

oder direkt mit

 

$pidList  = $this->cObj->data['pages']