Typo3 - Backend anpassen: Unterschied zwischen den Versionen
Steff (Diskussion | Beiträge) |
|||
| Zeile 102: | Zeile 102: | ||
== Bezeichnungen der Felder im Backend == | == Bezeichnungen der Felder im Backend == | ||
| − | Das läßt sich in der Benutzerkonfiguration mittels UserTS im UserTS Field oder auch in der Seiteneinstellung im PageTS machen. | + | Das läßt sich in der Benutzerkonfiguration mittels '''UserTS''' im UserTS Field oder auch in der Seiteneinstellung im '''PageTS''' machen. |
| + | In aktuellen Versionen kann man ja PageTS auch in einer Extension o.ä. definieren. | ||
Der Schlüssel für die Bezeichnungen ist das Objekt TCEFORM | Der Schlüssel für die Bezeichnungen ist das Objekt TCEFORM | ||
| + | |||
| + | Die Überschriften der Felder können so geändert werden. | ||
| + | pageTSconfig | ||
| + | // Label in eigener locallang_db.php überschreiben | ||
| + | TCEFORM.table.column.label = LLL:typo3conf/override_locallang_db.php:table.column | ||
| + | // Label in pageTSconfig überschreiben | ||
| + | TCEFORM.table.column.label = My Title | ||
| + | TCEFORM.table.column.label.de = Mein Titel | ||
| + | |||
| + | Für die Auswahl z.B. in den Selectfeldern sieht es etwa so aus: | ||
Allgemein: | Allgemein: | ||
| Zeile 145: | Zeile 156: | ||
TCEFORM.tt_content.header_layout.altLabels.1 = Überschrift Grafik | TCEFORM.tt_content.header_layout.altLabels.1 = Überschrift Grafik | ||
| + | ==== Backend über TCA in einer Extension anpassen ==== | ||
| + | |||
| + | ext_tables.php der Extension | ||
| + | // mehrere Lables | ||
| + | $TCA['tx_meinetabelle'] = Array ( | ||
| + | 'ctrl' => Array ( | ||
| + | 'label' => 'first_name', | ||
| + | 'label_alt' => 'last_name', | ||
| + | 'label_alt_force' => 1, | ||
| + | ...., | ||
| + | ), | ||
| + | ); | ||
| + | Oder nachträglich die Felder überschreiben in typo3conf/extTables.php: | ||
| + | // tt_address | ||
| + | $GLOBALS['TCA']['tt_address']['ctrl']['label'] = 'company'; | ||
| + | $GLOBALS['TCA']['tt_address']['ctrl']['label_alt'] = 'first_name, last_name'; | ||
| + | $GLOBALS['TCA']['tt_address']['ctrl']['label_alt_force'] = 1; | ||
| + | zeigt Firma, Vorname, Nachname an | ||
| + | Zuletzt getestet in TYPO3 4.4 | ||
=== Dem Layoutfeld sagen was es machen soll === | === Dem Layoutfeld sagen was es machen soll === | ||
In neueren Versionen wird in der Extension css_styled_content schon eine entsprechende Klasse um den Inhalt gewrapped, die man dann mit css Stylen kann. Man kann das aber auch selbst machen. Das funktioniert mit Conditions in der Form: | In neueren Versionen wird in der Extension css_styled_content schon eine entsprechende Klasse um den Inhalt gewrapped, die man dann mit css Stylen kann. Man kann das aber auch selbst machen. Das funktioniert mit Conditions in der Form: | ||
| Zeile 153: | Zeile 183: | ||
page.5.value = Layout2 | page.5.value = Layout2 | ||
[global] | [global] | ||
| + | |||
== Module im Backend anpassen == | == Module im Backend anpassen == | ||
Die Module lassen sich über die Access Listen in der Benutzergruppen-Konfiguration für alle Gruppen gezielt ein- und ausblenden. Weiterreichende Einstellungen kann man im PageTS Config oder im UserTS Config (besser) vornehmen. Die Einstellungen im UserTS Config überschreiben die mit PageTS | Die Module lassen sich über die Access Listen in der Benutzergruppen-Konfiguration für alle Gruppen gezielt ein- und ausblenden. Weiterreichende Einstellungen kann man im PageTS Config oder im UserTS Config (besser) vornehmen. Die Einstellungen im UserTS Config überschreiben die mit PageTS | ||
Version vom 7. Oktober 2016, 08:33 Uhr
Allgemein
Übersicht
Das Backend läßt sich in folgenden Bereichen anpassen:
- Welche Felder sieht ein Redakteur
- Bezeichnungen der Felder anpassen
- Welche Spalten sieht ein Redakteur und welche Bezeichnungen tragen diese
- Seit Verison 4.5 kann man auch sogenannte Backend Layouts erstellen. Dabei sind die Spalten nicht mehr zwingend von links nach rechts angeordnet, sonder es sind auch komplexere Strukturen möglich.
Beispiel
------ HEADERSPALTE ------ --- LINKS --- ---RECHTS---
- Felder im Backend einem Redakteur zur Verfügung stehen, läßt sich relativ genau mit den Allow Exclude Fields in der Benutzerkonfiguration und der folgenden Eigenschaft einstellen Allgemein: TCEFORM.tabellenname.feldname.disabled = 1
TCEFORM.tt_content.header_position.disabled = 1
- Inhaltsspalten im Backend:
mod.SHARED.colPos_list = 0,2
- Einträge in den Feldern entfernen (z.B. in Select Boxen - Um die WErte herauszufinden das Element verwenden und in der DB nach den Einträgen suchen)
TCEFORM.tt_content.header_layout.removeItems = 4,5
- Beschriftungen (Labels verändern)
TCEFORM.tt_content.header_layout.altLabels{
1 = Überschrift 1
2 = Überschrift 2
...
}
Besser aber mit locallang Datei arbeiten.
- Neues Label hinzufügen
TCEFORM.pages.layout.addItem.4 = Layout 4
Backend Layout erstellen
Siehe auch
- http://wiki.zone30.info/wikizone/index.php/TYPO3_-_Backend_Layouts
- Alt: http://blog.undkonsorten.com/typo3-4-5-tutorial-backend-layout-nutzen (Zugriff: 1/2012)
Hinweis -> nachfolgend ältere Beschreibung besser auf der Backend Layouts Seite nachschauen.
Kurzbeschreibung
- Ordner für Backend Layout Datensatz erstellen
- Datensatz Backend-Layout erstellen. Der Wizard hilft dabei. Im Ergebnis entsteht die Konfiguration die z.B. für ein 3-teiliges Layout mit Kopfspalte und darunter 2 Inhaltsspalten so aussehen könnte:
backend_layout {
colCount = 2
rowCount = 2
rows {
1 {
columns {
1 {
name = Top Wide
colspan = 2
colPos = 1
}
}
}
2 {
columns {
1 {
name = Bottom Left
colPos = 0
}
2 {
name = Bottom Right
colPos = 2
}
}
}
}
}
Jetzt kann man in den Seiteneigenschaften das Layout für die jeweilige Seite oder deren Unterseiten auswählen.
Erläuterungen
Man kann hierbei verschiedene Kategorien unterscheiden:
- Einstellen welche Elemente (Dropdowns, Felder,...) überhaupt Zugänglich sein sollen.
- Welche Einträge sind in diesen möglich (z.B. Einträge im Dropdown) bzw. welche Voreinstellungen werden ausgeführt und wie lauten die Bezeichnungen der Einträge.
Welche Elemente sollen sichtbar sein
Das läßt sich in der Benutzereinstellung in der Abteilung Exclude Fields einstellen. In der Benutzereinstellung lassen sich auch die Module etc. die der Benutzer sehen soll einstellen.
Feintuning - Voreinstellungen
Das meiste läßt sich über Einträge im TSConfig Feld bei den Seiteneinstellungen oder im TSConfig Feld bei den Benutzereinstellungen regeln (Page TSConfig bzw. User TSConfig).
Über den Knopf rechts von diesen Feldern gibt es einige Infos zu den zur Verfügung stehenden Objekten.
Eine wichtige Rolle kommt dabei TCEFORM zu, denn die meisten Einstellungen folgen der Syntax:
TCEFORM.[tabelle].[feld].[...] = Wert
Beispiel: jedes Content Element soll Standardmäßig versteckt sein:
Page TSConfig
TCAdefaults.tt_content.hidden = 1
Bezeichnungen der Felder im Backend
Das läßt sich in der Benutzerkonfiguration mittels UserTS im UserTS Field oder auch in der Seiteneinstellung im PageTS machen. In aktuellen Versionen kann man ja PageTS auch in einer Extension o.ä. definieren.
Der Schlüssel für die Bezeichnungen ist das Objekt TCEFORM
Die Überschriften der Felder können so geändert werden. pageTSconfig
// Label in eigener locallang_db.php überschreiben TCEFORM.table.column.label = LLL:typo3conf/override_locallang_db.php:table.column // Label in pageTSconfig überschreiben TCEFORM.table.column.label = My Title TCEFORM.table.column.label.de = Mein Titel
Für die Auswahl z.B. in den Selectfeldern sieht es etwa so aus:
Allgemein:
TCEFORM.tabellenname.feldname.typname.Nr. = neuer Wert
Diese Werte lassen sich über den HTML Code der Backendseite leicht herausfinden. Beim Eintragen im UserTS oder PageTS tut man sich leichter, wenn man hier eine externe TypoScript Datei einbindet.:
<INCLUDE TYPOSCRIPT: source="FILE: fileadmin/templates/inc/myUserTS.txt">
In dieser Datei befindet sich dann das eigentliche TypoScript z.B:
TCEFORM{
pages{
# z.B. das Feld layout ganz ein oder ausschalten
layout.disabled = 0
# Einträge umbenennen...
layout.altLabels{
1=rot
2=blau
}
# der Eintrag 0 soll weg...
layout.removeItems = 0
layout.addItems.4 = New Layout Item
}
}
Beispiel: Überschriften
Diese Einstellungen werden im TSConfig Feld der Benutzerkonfiguration vorgenommen !
Dropdown-Feld für die Überschrift (Header) anpassen
So kann man die überflüssigen Menüeinträge im Feld Header löschen(100 steht für den Wert versteckt):
TCEFORM.tt_content.header_layout.removeItems = 2,3,4,5,100
Trick: Wenn man nicht weiß welchen Wert ein eintrag hat, einfach diesen Wert verwenden und in der Datenbank nachgucken.
Überschreiben der Menüeinträge: User TSconfig
TCEFORM.tt_content.header_layout.altLabels.0 = Überschrift Text TCEFORM.tt_content.header_layout.altLabels.1 = Überschrift Grafik
Backend über TCA in einer Extension anpassen
ext_tables.php der Extension // mehrere Lables $TCA['tx_meinetabelle'] = Array (
'ctrl' => Array (
'label' => 'first_name',
'label_alt' => 'last_name',
'label_alt_force' => 1,
....,
), ); Oder nachträglich die Felder überschreiben in typo3conf/extTables.php: // tt_address $GLOBALS['TCA']['tt_address']['ctrl']['label'] = 'company'; $GLOBALS['TCA']['tt_address']['ctrl']['label_alt'] = 'first_name, last_name'; $GLOBALS['TCA']['tt_address']['ctrl']['label_alt_force'] = 1; zeigt Firma, Vorname, Nachname an Zuletzt getestet in TYPO3 4.4
Dem Layoutfeld sagen was es machen soll
In neueren Versionen wird in der Extension css_styled_content schon eine entsprechende Klasse um den Inhalt gewrapped, die man dann mit css Stylen kann. Man kann das aber auch selbst machen. Das funktioniert mit Conditions in der Form:
page.5 = TEXT [globalVar TSREF:page|layout = 1] page.5.value = Layout 1 [globalVar TSREF:page|layout = 2] page.5.value = Layout2 [global]
Module im Backend anpassen
Die Module lassen sich über die Access Listen in der Benutzergruppen-Konfiguration für alle Gruppen gezielt ein- und ausblenden. Weiterreichende Einstellungen kann man im PageTS Config oder im UserTS Config (besser) vornehmen. Die Einstellungen im UserTS Config überschreiben die mit PageTS
Uploadfeld mit Durchsuchen Button ausblenden
Bei der Arbeit mit dem DAM macht der Durchsuchen Button keinen Sinn bei Text mit Bild funktioniert das so:
setup.edit_docModuleUpload = 0
Einträge im Dropdownmenü der Module ausblendne
Einige Module haben ein Untermenü, dessen Einträge oben rechts in einem Dropdownfeld ausgewählt werden können. Das Modul Web > Seite enthält hier z.B. die Einträge Spalten, Schnelleingabe, Sprachen (wenn es welche gibt) und Seiteninformationen.
Um die Einträge auszublenden, muß man Wissen ob dies das Modul überhaupt zulässt und was der Schlüssel des Menüeintrages ist.
Beispiel - Ausblenden des Eintrags PageTSConfig im Modul Web>Info
mod.web_page.menu.function.tx_infopagetsconfig_webinfo = 0
Beispiel - Ausblenden des Eintrags Schnellzugriff im Modul Web > Seite
mod.web_layout.menu.function.0 = 0
Frames (Rahmen) anpassen
Infos gibt es hier: Typo3 - Rahmen (Frames)
Spalten anpassen
Welche Spalten sollen sichtbar sein
Das muß an zwei Stellen eingestellt werden.
1. für die Ansicht im Spaltenmodus. Das läßt sich im Seitenmodul im TSConfig-Feld der Root Seite (Page TSConfig)einstellen (Theoretisch auch für einen Benutzer im User TSConfig-Feld:
Beispiel:
mod.SHARED.colPos_list = 0,3
so werden nur noch die Spalten Normal und Rechts angezeigt (0 ist Spalte Normal dann von links nach rechts durchnummeriert)
2. muß das DropDown-Feld wenn man Seiteninhalte erstellt angepasst werden. Dies funktioniert über TCEFORM:
Beispiel:
TCEFORM.tt_content.colPos.removeItems = 1,3
Spalten über typo3conf/extTables.php anpassen
http://www.sk-typo3.de/Spalten-aendern-und-umbenennen.155.0.html
Beispiel:
typo3conf/extTables.php
Der Inhalt bei z.B. 6 Spalten sieht dann so aus:
t3lib_extMgm::addPageTSConfig('
mod.SHARED.colPos_list = 0,1,2,3,4,5
');
$TCA["tt_content"]["columns"]["colPos"]["config"]["items"] = array (
"1" => array ("Links||Links||||||||","1"),
"0" => array ("Mitte||Mitte||||||||","0"),
"3" => array ("Rechts||Rechts||||||||","3"),
"2" => array ("Unten Links||Unten Links||||||||","2"),
"4" => array ("Unten Rechts||Unten Rechts||||||||","4"),
"5" => array ("Fusszeile||Fusszeile||||||||","5")
);
im eigentlichen Array erkennt man, das 0 dem Hauptcontent zugeordntet ist, das entspricht dann auch der col im tt_content.
Damit das ganze auch wirksam wird, muss noch die localconf.php editiert werden.
Dort wird folgende Zeile eingefügt:
$typo_db_extTableDef_script = 'extTables.php';
Die Änderung wird sofort sichtbar
Nachteil: Funktioniert nur Global nicht auf Seitenebene.