Zum Inhalt springen

Dynamic Content Elements (DCE)

Erstellt am 29. Juli 2012 · 91 Antworten · letzte Antwort am 14. Mai 2019 · Seite 1 von 5

Tags: Frage

seimi ·

Hi,

ich hab diese Extension (neueste Revision) auch schon im Einsatz und muss sagen: GENIAL! Genau so etwas hab ich immer gesucht...

Das einzige Problem da ich habe ist, dass Inhalte vom RTE nicht gerendert werden. D.h. ich bekomme plain-text ausgegeben und deshalb erscheinen Sachen wie "<link 6 - internal-link>" oder auch "<b>".

Nach einiger Recherche hab ich gefunden, dass dieses Problem mittels "$this->pi_RTEcssText($text);" gelöst werden kann - nur weiß ich nicht, wo ich das einbauen soll.

Vielleicht kann mir ja jemand helfen...

Vielen Dank und liebe Grüße,
seimi

seimi ·

Hallo Rainer,

ich konnte dieses Problem leider nicht auf die Schnelle lösen und hab deshalb dieses Projekt mit Templavoila umgesetzt...

Liebe Grüße,
seimi

larsAWX ·

Hi Armin,

auch ich muss sagen, wirklich geniale Extension! Darauf habe ich schon so lange gewartet! Ich tue mich mit TV unheimlich schwer und habe mir so etwas sehr lange schon fürs klassische Pagemodul gewünscht! Super!

Ich hätte aber ebenfalls eine Frage. Ich benutze die aktuelle Version 0.7.2 Beta auf einem TYPO3 4.5.22. Das Häkchen unter Miscellaneous "Disables the "div.csc-default" wrapping" bleibt bei mir wirkungslos. Ich habe den ext_typoscript_setup.txt der Extension einmal meinem TS Setup hinzugefügt. Das hat aber auch nichts bewirkt.

Ich müsste das <div id="c2273" class="csc-default"></div> um die Ausgabe der DCEs aber unbedingt loswerden. Hättest Du da einen Tipp?

Viele Grüße und vielen Dank Dir!
Lars

Executter ·
downset schrieb

Wie kann man ein Bild im Fluid Template auslesen und eine Clickenlarge Funktion" dazu geben?

Hi Jens,

wenn Du ein Feld im DCE definierst, in dem Du Bilder auswählen kannst, dann kannst Du ja im Fluid Template auf den Dateiname zugreifen. Der Ort an den das Bild kopiert wird, wird ja ebenfalls im TCA definiert - in der Regel ist das sowas wie uploads/pics.

Im Fluid Template schreibst Du nun Folgendes:

<a href="{f:uri.image(src:'uploads/pics/{field.deinBild}')}" class="wasAuchImmerDeineJSLibraryHierGerneHaette">
  <f:image src="uploads/pics/{field.deinBild}" alt="Thumbnail" maxWidth="100" maxHeight="100" />
</a>

Mit dem f:image ViewHelper generierst Du ein Thumbnail von dem Bild, welches ausgegeben werden soll. TYPO3 wird dieses Bild dann mittels der eingestellten Library verkleinern und in typo3temp/pics/ ablegen.

In dem href vom Link, welches beim Klicken ja die große Version anzeigen soll, verwendest Du den den f:uri.image ViewHelper. Im Wesentlichen ist das genau das Selbe wie schon der f:image ViewHelper, nur das hier kein Image-Tag erzeugt wird - es wird nur die URL zum Bild zurückgegeben. Der Vorteil hier diesen ViewHelper zu benutzen: Du kannst auch hier Höhen und Breiten angeben und so z.B. die Größe der Vollbild-Version limitieren (z.B. auf 800x600).

Ich möchte allerdings anmerken, dass sich diese Frage mehr auf Fluid bezieht als auf die Handhabung der DCE-Extension selbst ;-)

Viele Grüße
Armin

andreknieriem ·

Hi, ich bin gerade dabei mich mit der Extension zu beschäftigen. Gibt es eine Möglichkeit eine Art Backendlayouts zu bauen? Also das man dort ein 50/50 Layout anlegt und in diese dann weitere DCE's einbauen kann? Also dass ich auch im Backend an der Stelle 2 Bereiche nebeneinander habe und dort wie bei Templavoila andere Felder anlegen kann.
Falls nein, kennst du eine Möglichkeit so etwas umzusetzen? Ich sitze an einer Seite die auf jeder Unterseite verschiedene Contentelemente hat. (Mal eine Slideshow, mal 3 News-Boxen, dann 2 oder 3 spaltig.. etc)

Viele Grüße

Executter ·

In jedem DCE gibt es unter dem Tab "Miscellaneous" die Option "DCE palette fields".
Hier kannst Du definieren welche Felder aus dem TCA (tt_content) in der DCE-Instanz angezeigt werden sollen.

Bild: screens.v.ieweg.de/2013-04-12_1438.png

Per Default stehen folgende Felder drin:
sys_language_uid, l18n_parent, colPos, spaceBefore, spaceAfter, section_frame, sectionIndex

andreknieriem ·

Ah das ist ja super! Gibt es eine Möglichkeit die Standardpaletten mittels TS oder anders global zu setzen? Danke für deine Antworten und die super Extension!

Executter ·
andreknieriem schrieb

Ah das ist ja super! Gibt es eine Möglichkeit die Standardpaletten mittels TS oder anders global zu setzen?

Über TS glaube ich nicht. Aber Du kannst $TCA natürlich jederzeit entsprechend manipulieren, nachdem Du es mit

t3lib_div::loadTCA('tt_content');

geladen hast.

CMT ·

Hallo Armin,

habe letztens die DCE-Extension geladen und installiert. Funktioniert einwandfrei! In den nächsten Tagen wirste 'ne kleine Spende erhalten.

Wünschenswert wäre natürlich noch eine Dokumentation... aber das weißt Du ja selbst. 🙂

Eine kleine Frage hätte ich aber noch: Ich habe ein Contentelement, genauer gesagt einen Teaser, der aus mehreren Link-Elementen (a-Tags) besteht. Im Backend soll nun aber nur EIN Typolink angegeben werden (und nicht für jedes a-Tag einzeln) und dann auf die a-Tags verteilt werden. Wie kann ich das am besten bewerkstelligen?

Viele Grüße,
CMT

Executter ·

Also wenn ich Dich richtig verstanden habe, dann hast Du mehrere Links die alle auf das selbe Ziel zeigen. Diese unterschiedlichen Links sollen aber z.B. unterschiedliche Texte beinhalten.

Dann machst Du ein Sektion-Field in dem Du z.B. ein Feld für die Beschreibung machst und machst außerhalb davon ein normales Feld für den Typolink.

In der For-Schleife kannst Du dann folgendes schreiben:

<f:for each="{field.sectionField}" as="sectionField">
  <a href="{dce:typolinkUrl({parameter:'{field.link}'})}">{sectionField.text}</a>
</f:for>

Ich bin gerade nicht sicher ob ich die Inline-Sytax vom typolinkUrl-Viewhelper richtig geschrieben habe... aber falls doch, sollte das so funktionieren.

CMT ·

Hi, danke für die schnelle Antwort. Hab mich noch ein wenig mit der Fluid-Templating Engine auseinandergesetzt und gemerkt, dass ich mein Ziel ganz einfach durch das hier erreichen kann:

<f:link.page pageUid="{field.link}">{field.text}</f:link.page>
larsAWX ·

Ich habe eben mit Armin gesprochen, der mir supernett und professionell geholfen hat mein <div class="csc-default">-wrapping Problem zu beheben.

Ich habe stets die Extension "cewrap" installiert, welche mir die Eingabe von eigenen Klassen an Content-Elementen erlaubt, was es für einen Integrator sehr flexibel macht.

Diese Extension verändert aber den Typoscript derart, dass sie eine neue Zwischenebene einzieht. Dadurch zog die Zeile

tt_content.stdWrap.innerWrap.cObject.default.stdWrap.if {
isInList.field = CType
negate = 1
}

nicht mehr.
Ich musste mit dem installierten "cewrap" eine .0 einziehen, so dass das hier dann funktionierte

tt_content.stdWrap.innerWrap.cObject.0.default.stdWrap.if {
isInList.field = CType
negate = 1
}

und mein csc-default div auch tatsächlich aus dem Quellcode verschwindet. Das nur für diejenigen hier, die ebenfalls "cewrap" nutzen...

Danke nochmal Armin!

Viele Grüße
Lars

CMT ·

Hallo noch mal Armin!

DCE läuft seit einiger Zeit ohne Probleme. Mir stellt sich jetzt aber die Frage, ob man ein erzeugtes DCE auch lokalisieren kann. Also im Backend wird zuerst eine Übersetzung des deutschen Elements angelegt und dann je nach Sprache angezeigt.

Ist das machbar?

CMT ·

Wann wird denn 0.9 voraussichtlich veröffentlicht?
Ja, das mit der locallang dachte ich mir auch. Wird wohl vorerst so ablaufen.

p.s.: So schnell wie Du antwortest, brauchen wir fast gar keine Doku. 🙂

Danke!
Mfg, Manuel

Executter ·

Ich habe momentan leider extrem viel zu tun, daher muss ich die Weiterentwicklung etwas zurückstellen. Die Spenden für die DCE-Extension reichen leider nicht für die Wurst aufs Brot ;-)

Ich werde das Feature aber mit einer höheren Prio versehen.

CMT ·

Hi ich mal wieder, hoffe du hast unsere Spende bekommen!

Zu meiner Frage: Ich habe eine Section angelegt in der ein einfaches Textfeld liegt. Im Template lege ich die Section dann an und rendere sie später. Komischerweise ist im Frontend nichts davon zu sehen. Was mache ich falsch? Sehe grad, dass im zweiten Screenshot noch ein falscher section name drinsteht, aber das wurde geändert.

Bild: s7.directupload.net/…/oevtze2h.png
Bild: s14.directupload.net/…/gmum262n.png