Zum Inhalt springen

Klassen per Backend einem Content-Element zuordnen?

Erstellt am 18. April 2007 · Noch keine Antworten

Tags: TCA, Inhaltselemente, Frage

manuelB ·

Hi,

mir kam da für ein relativ umfangreiches ausgefallenes Kundenprojekt eine Idee für eine funktionalität, die ich mit th_specialelements nicht mehr abgedeckt bekomme.

Und zwar gibt es bei diesem Projekt eine Unmenge verschiedener Styles von Content-Elementen. So gibt es beispielsweise 4 Bereiche die unterschiedliche Farbigkeit haben. In jedem Bereich gibt es kleine "Content-Boxen" die sowohl in der Größe, als auch in der Farbigkeit variieren. So sind z.B. die Boxen im roten Bereich natürlich mit roten Rahmen und roter Headline versehen, es soll aber ebenfalls die Möglichkeit gegeben sein, im roten Bereich Inhalte bspw. aus dem blauen Bereich anzuteasern, welcher sich dann natürlich in einem blauen Kasten mit blauer Headline befinden soll etc ... o.O

Gut, nun würd ich mir eine Funktionalität wünschen, wo ich bei jedem Content-Element eine Liste mit Checkboxen habe, bei der unterschiedliche vordefinierte CSS Klassen angekreuzt werden können. Beispielsweise:

[ ] Schmal [ ] Mittel [ ] Breit [ ] Lang [ ] Kurz [ ] Rot [ ] Blau [ ] Grün [ ] Gelb [ ] Links [ ] Rechts

Möchte der Redakteur nun ein langes schmales blaufarbiges Content Element auf der Seite haben. Wählt er beim entsprechenden Element aus: [X] Schmal [X] Lang [X] Blau.

Im Stylesheet sind nun die Klassen

.schmal {width: 200px;}
.mittel {width: 400px;}
.lang {height: 600px; overflow: hidden;}
.links {float: left;}

und so weiter definiert. Beim rendern der Seite werden nun im entsprechenden Content-Element durch Typo3 die gewählten Klassen vergeben:

<div class="schmal lang blau rechts">Contentblabla</div>

Ich hoffe mein Problem wird hier deutlich. Gibt es für sowas eine Extension? Oder irgendwie gute Tutorials wie man sowas ggf. selbst bewerkstelligen kann?

Bisher löse ich das mit der th_specialelements extension, wo ich ganz umständlich für jede Kombination ein entsprechendes Content Element anlege
(.schmal-lang-gruen-rechts, .schmal-lang-gruen-links, .schmal-kurz-gruen-link, usw...) was derbst umfangreich und lang wird.