Flaggen Icons im TYPO3-Backend austauschen

Achtung, die nachfolgenden Änderungen betreffen nur die TYPO3-Versionen < 4.5.
Da ab der Version 4.5 so genannte CSS-Sprites zum Einsatz kommen, kann diese Methode in dieser Version nicht verwendet werden.

Aus meiner Erfahrung gibt es zwei Möglichkeiten, die Flaggen im TYPO3-Backend auszutauschen:

  1. man ändert die Dateien im bisher verwendeten Verzeichnis
  2. man wechselt das Verzeichnis und verwendet die darin enthaltenen Grafiken

Für die erste Methode wechselt man in das Verzeichnis „/typo3/gfx/flags/“ und ändert dort die gewünschten Grafiken. Der Vorteil hierbei liegt darin, dass keine weiteren Anpassungen gemacht werden müssen. Einfach austauschen und fertig. Ein Problem tritt dann auf, wenn TYPO3 upgedated wird und somit die Flaggen wieder durch die Standard-Icons ersetzt werden.

Die zweite Methode, aus meiner Sicht die glücklichere, da die Änderung auch bei einem Update beibehalten wird, bereitete mir zuerst einige Probleme.
Mir war klar, dass ich den Pfad irgendwie ändern kann, denn TYPO3 ist äußerst flexibel, jedoch fehlte mir noch der richtige Ansatz. Selbst nach einiger Recherche habe ich keine passende Info dazu gefunden, wie das Verzeichnis geändert werden kann.
Danke deshalb an Stefan Galinski, seines Zeichens TYPO3 v4 Core Developer, der mir über Twitter den entscheidenden Hinweis dazu gab.

Um den Pfad zu ändern, muss die Datei „extTables.php“ im Verzeichnis „typo3conf“ um folgendes erweitert werden:

t3lib_div::loadTCA('sys_language');
$TCA['sys_language']['columns']['flag']['config']['fileFolder'] = 'fileadmin/pfad/zu/den/flaggen/';

Die Angabe „fileadmin/pfad/zu/den/flaggen/“ kann natürlich angepasst werden und dient hier nur als Beispiel.
Ich hoffe mit diesem Blog-Eintrag allen geholfen zu haben, die genauso wie ich verzweifelt auf der Suche nach der Lösung des Problems waren.

 

Grid View in TYPO3 4.5 LTS

Mit der vor Kurzem veröffentlichten TYPO3 Version 4.5 hat sich nicht nur der Support auf mehr als drei Jahre verlängert, nein auch einiges in der Usability hat sich getan. Das Backend wurde auf ExtJS umgestellt, es wurde ein Linkvalidator integriert und an vielen kleinen und großen Schrauben gedreht.

Auf ein visuelles Gut bin ich beim Durchschauen der Änderungsliste gestoßen… das Grid View. Mit ihm lässt sich die bisherige Spaltenansicht (Links, Normal, Rechts, Rand) so anpassen, dass diese wie im Frontend dargestellt werden. Also nicht nur nebeneinander wie bisher, sondern auch darüber, darunter, über mehrere Zeilen hinweg, und und und. Was in Zeiten vor CSS mit „Layouttabellen“ realisiert wurde, kann jetzt dementsprechend im Backend mit einem komfortablen Wizard erstellt werden.

TemplaVoila!-User kennen diese Art der Darstellung ja schon, für diejenigen die zum ersten Mal damit arbeiten wollen, findet sich nachfolgend eine kleine Einführung.

Das Grid View kann auf jeder Seite eingebunden werden. Dazu wählt man links in der Navigation das Listenmodul und legt einen neuen Datensatz vom Typ „Backend Layout“ an. Hier kann der Titel, ein Bild und eine Beschreibung hinterlegt werden. Der Dreh und Angelpunkt des Datensatzes ist jedoch der Konfigurationsbereich. Glücklicherweise wurde hier ein Wizard implementiert, über den die Konfiguration einfach und intuitiv erstellt werden kann. Wie zu erwarten, lassen sich über das Plus-Zeichen am rechten, bzw. unteren Rand weitere Felder hinzufügen und über das Minus-Zeichen die Felder wieder entfernen. In den Feldern selbst, kann die Position über die Pfeile verschoben werden und bei einem Klick auf das Stift-Symbol der Name, bzw. die Spaltennummer bearbeitet werden. Die Spaltennummern sind uns besser bekannt als „colPos“, daher sollten diese von 0 aufsteigend nummeriert werden. Über die Spaltennummer wird später im Typoscript der Inhalt an einen Marker gebunden und so im Frontend ausgegeben.

Nach dem Speichern des Grid View, muss dieses in den Seiteneigenschaften einer Seite zugeordnet werden. Hierbei kann man eine Darstellung für die aktuelle Seite, sowie für die darunter liegenden Seiten definieren. Wurden die Änderungen in den Seiteneigenschaften gespeichert, ist das Grid View aktiv und der Seiteninhalt kann in die entsprechenden Felder eingebunden werden.

Jetzt muss nur noch per Typoscript festgelegt werden, welches Feld auf der Website wo ausgegeben werden soll und wir haben das Grid View fertig integriert.

page.10.marks{
 LOGO = CONTENT
 LOGO {
  table = tt_content
  select.where = colPos=0
 }
 ...
 LINKE_SPALTE{
  select.where = colPos=3
 }
 ...
 ADVERTS{
  select.where = colPos=x
 }

Aus meiner Sicht ist das Grid View eine große Bereicherung für das Backend von TYPO3 daher gehen Komplimente an alle, die daran mitgearbeitet haben.

Genug geschrieben, jetzt ist eure Meinung gefragt.