Dynamic Content Elements (DCE)

  • Steppo Steppo
    Padawan
    1 x
    60 Beiträge
    1 Hilfreiche Beiträge
    29. 07. 2012, 19:07

    Ich versuche mich gerade an der im Titel genannten Extension.

    Leider fehlt das Manual. Ich habe mich jetzt versucht ein wenig da durchzuwurschteln, muss aber feststellen, dass ein Manual doch schon Hilfreich wäre.

    Vielleicht hat ja jemand den ein oder anderen Tipp, oder einen Link zu einem Tutorial oder Erklärung.

    Schönen Abend noch und Grüße.

  • Hilfreichster Beitrag

  • 1 x
    13 Beiträge
    6 Hilfreiche Beiträge
    17. 09. 2012, 16:00 - Hilfreichster Beitrag

    Hey,
    also im Grunde ist es relativ einfach.

    Du erzeugst auf der Root-Ebene (im Verzeichnisbaum gaaaanz oben) oder im neuen DCE-Modul ein neuen DCE-Eintrag. Dem gibst Du einen Titel und mindestens ein Feld.

    Das Feld braucht dann einen Variablenname und einen Titel, sowie eine Konfiguration. Die Konfiguration basiert auf das in TYPO3 verwendete TCA. Also so wie alle Felder im Backend von TYPO3 definiert werden, werden auch hier neue Felder auf die gleiche Weise erzeugt. Was ein bisschen anders ist, dass hier XML verwendet wird (Stichwort: Flexforms).

    Damit man nicht wie der "Ochs vorm Berg" steht, habe ich oberhalb der Eingabe der Konfiguration des Feldes eine Dropdown-Box hinzugefügt in der ein paar Beispielkonfigurationen für Felder enthalten sind.

    Wenn Du nun also ein oder mehrere Felder definiert hast, kannst Du unter dem Reiter Template die Ausgabe dieser Felder definieren. Auch hier gibt es ein Dropdown, welches die Variablen beinhaltet (nachdem man gespeichert hat) und diverse Viewhelper, die seitens Fluid und aber auch von der Extension selbst mitgeliefert werden.

    Falls Du nun gar kein Plan hast, was "Viewhelper" sind - nun, dabei handelt es sich um ein Bestandteil der bei der "neuen" Template-Engine "Fluid" enthalten ist. Im Prinzip handelt es sich dabei um kleine Helfer, die die Ausgabe entsprechend anpassen können. Fluid ist eigentlich relativ einfach zu verstehen, wenn z.B. so Template Engines wie Smarty kennt.

    Wenn Du nun das DCE soweit fertig erstellt hast und speicherst, kannst Du auf einer beliebigen Inhaltsseite ein neues Content-Element hinzufügen und in der Dropdown-Liste in der der Typ festgelegt wird wirst Du auch das neue DCE sehen. Sobald Du es auswählst, findest Du die von Dir definierten Felder vor - und wenn Du diese befüllst und im Frontend anzeigst wird die entsprechende Ausgabe dargestellt.

    Es ist nun so, dass die aktuelle Version die im TER liegt schon ziemlich alt ist und das seit dem sehr sehr viel in der Extension passiert ist. Diese ganzen Änderungen werden mit Version 0.5 kommen - erfordern aber, dass ich die Dokumentation soweit fertig geschrieben habe. Das steht auf meiner privaten ToDo Liste ganz oben.

    Die aktuellste (Entwickler-)Version der DCE Extension findest Du im SVN:
    https://svn.typo3.org/TYPO3v4/Extensions/dce/trunk/

    Allerdings wenn Du kein Entwickler bist, wird Dir das vermutlich nicht viel nützen ;-)

    Ich denke ich werde noch ein bisschen brauchen für die Dokumentation - aber so Anfang/Mitte Oktober sollte es dann soweit sein :)

    Viele Grüße
    Armin Vieweg


  • andreaswalz andreaswa...
    TYPO3-Anwärter
    0 x
    5 Beiträge
    0 Hilfreiche Beiträge
    14. 05. 2019, 12:06

    Hallo, ich komm grad nicht weiter, ich verwende eine Selectbox aus einer externen Tabelle, es wird dann automatisch der title als Auswahltext und die uid als Value ausgewählt, klappt alles, aber ich möchte den Auswahltext auch in der Ausgabe (fluid) verwenden, wie mache ich das, dass dann nicht nur 1 oder 2 (das ist mein uid) steht? Natürlich könnte ich das mit einer Condition hinbekommen, aber der Text soll ja aus der DB kommen und nicht im Template verborgen sein.
    meine config sieht so aus (Standard):
    <config>
    <type>select</type>
    <!-- uncomment this, if you want to add an empty option before -->
    <!-- <items type="array">
    <numIndex index="0" type="array">
    <numIndex index="0"></numIndex>
    <numIndex index="1"></numIndex>
    </numIndex>
    </items> -->
    <foreign_table>tx_key1xxxxxxx</foreign_table>
    <size>1</size>
    <minitems>0</minitems>
    <maxitems>1</maxitems>
    </config>