Typo3Inhalte

Aus Debacher-Wiki
Wechseln zu: Navigation, Suche

Das Eingeben von Inhalten ist natürlich für ein CMS eine extrem wichtige Aufgabe. Bei Typo3 ist eine Seite eine Art Container für eventuell mehrere Inhalte. Jeder dieser Inhaltsbereiche gehört zu einem Inhaltstyp.

Eingabe von Inhalt

Zum Eingeben von weiteren Inhalten klickt man auf Seite und dann die Seite im Seitenbaum. Im rechten Bereicht zeigt sich das folgende Formular.

Typo3-seiteninhalt2.png

Hier kann man an sehr vielen Stellen klicken. Mit Seitentitel bearbeiten oder Seite verschieben greift man auf die Seite als Ganzes zu. Von den vier spalten für den Inhalt interessiert nur die Spalte Normal, da wir kein mehrspaltiges Layout benutzen. Mit den Bleistift-Icons kommt man immer zu einem Editor für den Datensatz bzw. den ersten Datensatz. Entsprechend mit einem Klick auf eine der Abschnitts-Überschriften.

Mit einem Klick auf eines der Icons die wie eine Seite aussehen legt man einen neuen Datensatz an. Entweder am Anfang der Seite oder hinter dem aktuellen Datensatz.

Datensätze kann man hier auch einzeln löschen und verbergen. Verborgene Datensätze werden normalerweise nicht angezeigt.


Datensatz Typen

Typo3-seiteninhalt1.png
Die nebenstehende Abbildung zeigt die Typen, die Typo3 normalerweise zur Verfügung stellt. Diese Liste kann durch Erweiterungen umfangreicher werden. Das beliebte News-Plugin z.B. fügt hier einen weiteren Typ ein.

Ein Datentyp ist an sich eine harmlose Einrichtung. Genaugenommen legt der Typ nur fest, welche Datenfelder im Eingabeformular zur Verfügung stehen. Die Felder in der Datenbank sind bei allen Typen gleich. Das hat zur Folge, dass beim Ändern des Typs bestimmte Felder verschwinden. Die Informationen in ihnen sind aber nicht verloren, sie tauchen wieder auf, sowie man den Type zurückstellt.

Im einfachsten Fall greift man zum Standard-Typ normaler Text. An ein paar Dinge muss man sich gewöhnen. Der Typ Text mit Bild erlaubt zwar das Einbinden mehrerer Bilder, die werden aber als eine Einheit betrachtet. So gibt es z.B. nur eine Bildunterschrift und eine Einstellung zur Positionierung.

Will man einen Text mit mehreren eingebundenen Bildern erstellen, so muss man diesen in mehrere Abschnitte aufteilen und für jeden Abschnitt einen eigenen Datensatz auf der Seite anlegen. Die einezlnen Datensätze wirken dann wie einzelne Absätze.

Den Typ Tabelle sollte man möglichst vermeiden, da er nicht ohne Weiters die Regeln für die Barrierefreiheit berücksichtigt. Dafür gäbe es Erweiterungen von Typo3.

Manche der Typen sind so umfangreich, dass für den Benutzer kaum noch etwas zu tun ist. Zu diesen Typen gehört z.B. die Sitemap. Im Seitenbaum befindet sich eine gleichnamige Seite. Wenn man deren Typ auf Sitemap umstellt, so erzeugt Typo3 beim nächsten aufruf dieses Menüpunktes sofort eine Sitemap. Diese Sitemap ist aber leider noch nicht perfekt, da sie von der Wurzelseite ausgeht und daher die beiden Menüseiten mit aufführt. Eine Beschreibung wie man das ändert folgt später.

Entsprechend einfach kann man auch ein Anmeldeformular integrieren, es geht dabei primär um ein Anmeldeformular für Frontend-Banutzer. Damit könnte man dann realisieren, dass bestimmte Seiten nur für angemeldete Benutzer zur Verfügung stehen. Man kann hier sogar unterscheidliche Benutzergruppen einrichten, die jeweils bestimmte Äste des Seitenbaumes sehen können. Mehr dazu in einem späteren Abschnitt.

Auch die Suchfunktion ist im Prinzip vorbereitet, muss nur noch angepasst werden.

Wem die mitgelieferten Typen nicht ausreichen, der kann immer noch zum Typ HTML greifen, hier kann nahezu alles eingegeben werden, was korrekten Code ergibt. Damit sollten keine Wünsche an die Gestaltung offen bleiben müssen.

Für den normalen Frontend-Benutzer kann man die Zahl der zur Verfügung stehenden Typen reduzieren und an den aktuellen Bedarf anpassen. Normalerweise braucht ein Benutzer nur sehr wenige der Typen, was die Einarbeitung deutlich erleichtert.

Sitemap

Allein das Umstellen des Seitentyps auf Sitemap reicht nicht aus, weil die Sitemap dann von der Root-Seite ausgehend dargestellt wird. Im Menü zum Bearbeiten von Seiten des Typs Sitemap gibt es ein Feld namens Ausgangspunkt. Das ist genau für diesen Fall gedacht. In dieses Feld muss man jetzt die beiden Menüseiten aufnehmen, das geht über das Icon durch Datensätze browsen rechts neben dem Feld. Dummerweise langt auch diese Änderung noch nicht, weil das Feld nicht ausgewertet wird.

Ein paar zusätzliche Zeilen Code im Template ändern dies. Einfach folgende Zeilen am Ende anfügen und schon tauchen nur noch die gewünschten Inhalte in der Sitemap auf.

tt_content.menu.20.2 {
 special = directory
 special.value.field = pages
}

Bei der Gestaltung nerven etwas die eingerückten grauen Hintergründe, die je nache Ebene unterschiedlich weit eingerückt sind. Ich habe daher einfach im Stylesheet an der entsprechenden Stelle margin-left durch padding-left ersetzt.

/* Menu / Sitemap, "Sitemap" */
DIV.csc-menu-2 { }
DIV.csc-menu-2 P.csc-sitemap { }
DIV.csc-menu-2 P.csc-sitemap-level1 { padding-left: 20px; }
DIV.csc-menu-2 P.csc-sitemap-level2 { padding-left: 40px; }
DIV.csc-menu-2 P.csc-sitemap-level3 { padding-left: 60px; }
DIV.csc-menu-2 P.csc-sitemap-level4 { padding-left: 80px; }
Meine Werkzeuge