Hallo,
ich habe anscheinend ein Verständnisproblem bei der Verwendung
von flexiblen Content Elementen und T3 / templaVoila. Vorweg
muss ich sagen, dass ich noch nicht viel Erfahrung mit T3 habe.
Sofern ich das Prinzip der FCE verstanden habe, stellt ein FCE
ein "kleineres" Template dar, welches man in ein Seitentemplate
einfügen kann. Ich habe jedoch noch nicht herausgefunden, wie
ich ein solches "inneres" Template einbinden kann.
Mein Test-Seitentemplate sieht folgendermaßen aus :
<html>
<head>
<title>zwei</title>
</head>
<body>
<h1>zwei</h1>
<div id="fce_container">
this is for fce
</div>
</body>
</html>
Diese habe ich mittels TemplaVoila gemappt und eine neue Seite
damit erstellt. Root ist <body> und testweise läßt sich die
Überschrift editieren. Soweit so gut.
Das <div> mit der id fce_container sollte mein FCE auf-
nehmen. Ich habe dieses gemappt und als Container Element
gekennzeichnet.
Der entstandende Codeabschnitt sie folgendermaßen aus:
<field_zwei_fce_container type="array">
<type>array</type>
<tx_templavoila type="array">
<title></title>
<etype>ce</etype>
</tx_templavoila>
</field_zwei_fce_container>
Wenn ich die Seite dann aber editieren möchte, um dem fce_container
des jeweilige FCE zuzuweisen, erscheint aber kein Eingabefeld
für den div-Bereich.
In den Tutorials steht man, solle das FCE einfach über NEUE SEITE
als flexiblen Inhalt einbinden, aber dann erscheint es lediglich
unter "Nicht verwendete Elemente".
Kann mich jemand auf den richtigen Weg bringen ?
Danke im Voraus.
b3nny!
hi b3nny
Du mappst einen Container, d.h. du willst ein FCE einfügen.
Für die Editierung benötigst du jetzt ein FCE, welches z.B. einen RTE enhält.
<body>
<div id="deine">
Mappe das div mit set inner und der Bodytextarea
</div>
</body>
</html>
Speichere dies als Content Element ab, nicht als Page.
Jetzt hast du ein erstes FCE, dass du in dein Seitentemplate einfügen kannst.
hoffe geholfen zu haben
grüsse demeter
@demeter:
Erstmal vielen Dank für die schnelle Hilfestellung. Aber ich glaube das ist
noch nicht ganz die Lösung meines Problems. Ich habe den Schritt, wie Du ihn
beschrieben hast, auch schon ähnlich gemacht.
Das FCE ( innere Template ) welches im Seitentemplate im <div> fce_container
eingefügt werden soll, sieht bei mir beispielsweise so aus :
<html>
<head>
<title>simple tmpl</title>
</head>
<body>
<div id="testB">
<h1>FCE Test</h1>
<img src="t.gif" alt="" />
<p>test test test test
</p>
</div>
</body>
</html>
Hierbei habe ich wie in den gängigen TemplaVoila Tutorials beschrieben als Root
nur den <div> mit der id "testB" gemappt und die anderen Elemente normal. Dieses
habe ich dann auch wie Du schon sagtest, als Content Element abgespeichert.
Doch nun stellt sich mir die Frage, wie/wo ich im Seitentemplate einstellen
kann, daß das Container Element fce_container mein erzeugtes Content
Element testB einbinden soll ?
Ich hoffe ich konnte das ein wenig deutlich machen !?
Nochmals vielen Dank für jede Hilfestellung
Hallo,
ich glaube du hast auch den Artikel im T3N Magazin gelesen. Ich bin auch ein ziemlicher Anfänger wenn es um Typo3 geht und ich verstehe auch nicht ganz wie ich mit deinem FCE klar kommen soll.
Mein Template für die Seite habe ich mit TemplaVoila gemapped, das funktioniert auch alles. Aber wie kann ich jetzt das sozusagen Template im Template einbinden? Vorallem möchte ich nicht einen fixen Bereich dafür verwenden sondern z.B. wenn ich das FCE benötige, es einfach im "Content" Bereich ausgegeben wird.
So, ich hoffe es kann mir/uns das jemand erklären und bedanke mich im Voraus.
Aber wie kann ich jetzt das sozusagen Template im Template einbinden?
Genau darum geht es im Prinzip ja auch bei mir. Vielleicht hat ja noch einer
'nen Tipp für uns 😉 [/quote]
Du darfst den div nicht als Container mappen sondern als Element!
Gehen wir von deiner Beispiel HTML aus:
<html>
<head>
<title>zwei</title>
</head>
<body>
<h1>zwei</h1>
<div id="fce_container">
this is for fce
</div>
</body>
</html>
Wie du es schon gemacht hast, mappst du den body als Root.
Alle Bereiche, in die du im Backend Inhalte eingeben willst, müssen als "ELEMENT" gemappt werden!
In deinem Fall nehmen wir <h1> als Überschrift und <div id="fce_container"> als Bodytext mit RTE.
Also bei [Enter new fieledname] z.B. "header" eingeben --> Auf Add klicken
Mapping Type = Element
Title / Mapping instructions / Sample Data kannst du frei wählen
Editing Type = Header field
Klick auf Update
Dann mappst du dein Header auf <h1> INNER
Das selbe machst mit deinem <div>, hier nimmst du als
Editing Type = Rich text editor for Bodytext
Auch als INNER mappen, da halt dein div auswählen.
Speichern als "Content Element" --> Fertig! Jetzt kannst du es als Inhaltselement unter "Flexibler Inhalt" auswählen.
Ausführlich findest du es in der Doku:
http://typo3.org/documentation/document-library/tutorials/doc_tut_ftb1/current/view/1/4/
Der Editing Type "Content Element" und natürlich das Mappen als "Element"
waren anscheinend meine Fehler.
Danke @Norman2K. Jetzt hat's geklappt!
Und Danke auch an die anderen (Chris, demeter) für Eure Hilfe.
Gruß,
benny!
So, jetzt habe ich dazu auch noch eine Frage, weil ich auch erst
seit kurzem mit TV zu tun habe.
Und zwar geht es darum, einfach eine neue Seite nach Template
zu erzeugen und dann eben FCEs als Inhaltselemente einzufügen.
Der erste Schritt ist klar, funktioniert auch einwandfrei. Wenn
nun ein FCE definiert habe, wie und wo taucht das dann auf. Nur
für eine bestimmtes Template oder stehen die generell zur
Verfügung > sagen wir ein Element mit Text, 2 Bilder und einem Link?
Würde dieses neue Element in der Liste der anderen Inhaltselemente
auftauchen?
vielen Dank!
T.C.
Hi,
Content Elements tauchen normalerweise unterhalb von "Typischer Seiteninhalt",
"Spezielle Elemente" und "Formulare" unter der Rubrik "Flexibler Inhalt" auf und
sind gewöhnlicherweise von jeder Seite/Template auswählbar.
Kurz gesagt, standardmäßig sind Content Elements unabhängig von den Page Templates
zu betrachten auch wenn sie vielleicht auf derselben HTML-Vorlage beruhen.
Gruß,
Sun