T3tipps

TYPO3 Tipps und Tricks gesammelt

Wechseln zu: Inhalt | Sidebar | Footer

RealUrl zeigt nur Page ID an

30. September 2011 (08:47) | Minitipp, Plugin | Author : Robert Wenk

Die TYPO3-Extension RealURL gehört eigentlich zu jeder TYPO3-Installation dazu. Nicht nur optisch sondern auch aus Sicht der Suchmaschinen-Freundlichkeit ist das Pflichtprogramm.

Unverständlich: Was andere CMS und Blogsysteme standardmäßig anbieten muß bei TYPO3 seit Jahren immer noch über eine Extension gelöst werden und deshalb kommts immer wieder zu eigenartigen Problemen.

Seit einiger Zeit verfügt die Extension RealURL schon über die Option „Autokonfiguration“. So spart man sich schon mal bei der Erstinstallation das umständliche konfigurieren der Extension.

Die Autokonfiguration klappt auch meistens ganz gut, leider entstehen dadurch wieder andere Probleme, deren Ursache nicht immer klar zu erkennen ist.

Häufiges Problem: URLs werden sauber umgeschrieben, jedoch werden aus völlig unerfindlichen Gründen irgendwann nur anstatt der Seitentitel in der URL lediglich die Page-IDs angezeigt. Das rewriting funktioniert zwar noch einwandfrei, aber alle Links in den Suchmaschinen sind jetzt unbrauchbar.

Der genaue Grund ist nicht mehr auszumachen.

Eine der Ursachen kann sein, dass die Extension RealURL nur bei der Installation die automatische Konfiguration vornimmt und die Konfig-Datei erzeugt. Werden nachher noch Änderungen vorgenommen, die die URL betreffen, so kommt RealURL damit nicht mehr klar und geht sozusagen in den Notbetrieb und arbeitet mit der Page-ID.

Welche Einstellungen die URL betreffen ist oft nicht klar zu erkennen.

Unter anderem fallen darunter:

  • Hinzufügen neuer Sprachen zur TYPO3-Installation
  • Anlegen einer neuen Domain
  • Installation weiterer Extensions nach der Installation von RealURL

Aber auch eine unvollständige Konfiguration der verwendeten Domains kann zu Problemen führen:

Wenn beispielsweise TYPO3 die Domains http://meinedomain.de und http://meinedomain.com bedienen soll, dann müssen beide Domains hinzugefügt werden. Nicht zu vergessen auch mit www-Präfix. Es sind also die Domain-Records

  • meinedomain.de
  • www.meinedomain.de
  • meinedomain.com
  • www.meinedomain.com

Wichtig: Nach derartigen Konfigurationsänderungen wird am besten die Datei „realurl_autoconf.php“ und der Konfigurationscache gelöscht.

Beim nächsten Zugriff erzeugt RealURL die realurl_autoconf.php neu aus der TYPO3-Konfiguration.

Löschen des Konfigurations-Cache allein reicht nicht aus.

Sprachumschaltung mit TYPO3 4.5.4

24. August 2011 (15:39) | Extensions, HowTo | Author : Robert Wenk

Für die Sprachumschaltung gibts eine Vielzahl Rezepte. Nach längerem vergleichen von Umschaltungsvarianten haben wir uns für die TYPO3-Extension Language Selection (sr_language_menu) entschieden.

Mit dieser Extension kann eine mehrsprachige TYPO3-Website als One-Tree realisiert werden. Dabei sind auf jeder Seite in der Sprachnavigation nur die Sprachen anwählbar, für die auch eine Übersetzung vorliegt. Alle anderen Sprachen sind nicht klickbar (in der Flaggenvariante stellt TYPO3 die Flagge grau dar).

Im nachfolgenden kurz die Schritte um die Extension einzubinden.

1. Anlegen einer neuen Sprache
dazu auf die Weltkugel klicken und aus dem Kontext-Menü den Punkt „Neu“ wählen.
Jetzt rechts unter „Neuer Datensatz“ einen Datensatz vom Typ „Website Sprache“ anlegen.
Im Menü sind jetzt die Felder „Sprache“, „Wähle Sprache ISO-Code“ und die Flagge auszuwählen. Wichtig: der ISO-Code der Sprache ist kein Pflichtfeld, wird aber von der TYPO3 Extension benötigt.

2. UID der Sprachen ermitteln
In der Listenansicht die Root-Seite wählen. Jetzt werden rechts die Website-Sprachen angezeigt. Wenn der Mauszeiger über dem Symbol der Sprache liet, dann wird im Tooltip die UID der Sprache angezeigt. Bitte merken.

3. Installation der Extension
Für die Extension wird noch die TYPO3-Extension Static Info Tables (static_info_tables) benötigt. Diese ist ggf. über den Extension-Manager nachzuinstallieren.

4. TYPOscript konfigurieren
TYPOScript muss die Sprachvariablen an die Links anhängen. Dazu ist die Konfig folgendermaßen zu ergänzen. Im Beispiel für die Sprachen Deutsch, Englisch und Französisch. Bei den Zeilen

[globalVar = GP:L = ] und sys_language_uid = ist jeweils die vorher ermittelte UID der Sprache anzupassen.


####################################################
### Spracheinstellung Deutsch ###################
[globalVar = GP:L = 0]
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]

# English language, sys_language.uid = 1
[globalVar = GP:L = 2]
config {
 sys_language_uid = 2
 language = en
 locale_all = en_UK
 htmlTag_langKey = en
}
[global]
# French language
[globalVar = GP:L = 3]
config {
 sys_language_uid = 3
 language = fr
 locale_all = fr_FR
 htmlTag_langKey = fr
}
[global]

5. Konfiguration der Extension im Setup
Ins Setup der Seite wird die Extension konfiguriert. Im folgenden mein Codebeispiel:

#Sprachwechsler mit Flaggen zusammenstellen
plugin.tx_srlanguagemenu_pi1 {
useSysLanguageTitle = 0
defaultLanguageISOCode = DE
LanguageISOCode = DE
#Wraps um die Links setzen
#link.CUR.stdWrap.wrap = <li class='CUR'>|</li>
#link.NO.stdWrap.wrap = <li class='NO'>|</li>
link.NO.stdWrap = |
#
hideIfNoAltLanguages = 1
#
# Soll die gewählte Sprache angezeigt werden?
#don't show current language if showCurrent=0
#showCurrent = 0
#
# Template-File auf das eigene Verzeichnis umstellen
templateFile = fileadmin/template/sprachwahl.tmpl
#
#Darstellung auswählen: (2: Liste, 1: Auswahlliste, 0:Flagge)
defaultLayout = 0
links.stdWrap.split.wrap >
_CSS_DEFAULT_STYLE >
#
#Sollen nur bestimmte Sprachen angezeigt werden?
#languagesUidsList = 1,3
}
 

Das html-Template für die Extension ist bei Bedarf noch anzupassen. Dazu wird es aus dem Verzeichnis typo3conf/ext/sr_language_menu/pi1/tx_srlanguagemenu_pi1_template.tmpl ins Verzeichnis fileadmin/template/stprachwahl.tmpl kopiert. Die Datei kann jetzt bearbeitet werden.

6. Plugin ausgeben
im html-Template wird jetzt ein Marker, z.B. ###LANGUAGE### plaziert und im TYPOScript wird dieser mit der folgenden Zeile belegt:

page.10.marks.LANGUAGE < plugin.tx_srlanguagemenu_pi1

Fertig.

Fehler bei Übersetzung im Backend nach Installation TYPO3 4.5

22. August 2011 (15:23) | Minitipp | Author : Robert Wenk

Nach der Installation bzw. nach dem Upgrade auf die TYPO3 Version 4.5.4 waren auf einmal die Labels im TYPO3 Backend nur noch teilweise übersetzt. Davon war sowohl die TYPO3 Tool-Spalte als auch die Bezeichnungen auf der rechten Seite betroffen.

Unabhängig davon, ob es sich um den TYPO3 Core oder um TYPO3 Extensions handelt.

Mehrmaliges Holen/Aktualisieren im Extension Manager, „Status mit Bibliothek vergleichen“, „Aus Bibliothek aktualisieren“ noch das herunterladen von einzelnen Übersetzungen wollte das Problem lösen.

Auch das Umstellen auf ein anderes Sprachpaket im TYPO3-Erweiterungsmanager brachte keine Abhilfe.

Nach wie vor bleibt im Extension-Manager bei den Übersetzungen alles Grün. Leeren der Caches und aus- und Einloggen – Fehlanzeige.

Die Lösung für das Sprachproblem brachte das komplette löschen aller l10n-ZIP-Dateien aus dem Verzeichnis typo3temp.

Erst wenn die entfernt sind, prüft TYPO3 vollständig die Übersetzungen und führt eine Aktualisierung durch.

Im Nachhinein hab ich entdeckt, dass das im alten Extension Manager auch, etwas versteckt, schon angesprochen wird. Dort steht nämlich: „Um eine vollständige Prüfung oder eine Aktualisierung zu erzwingen, löschen Sie die l10n-Zip-Dateien im Verzeichnis typo3temp.“

War aber bei mir nicht zusehen, weil gleich der neue Erweiterungsmanager gestartet wurde.