[Frage] tt_content.stdWrap.cObject anpassen, so dass andere layout-einstellung eigene Definition annimmt, alle anderen aber bleiben. TYPO3-Version: 7.6.13

  • Fuchur84 Fuchur84
    T3PO
    0 x
    17 Beiträge
    0 Hilfreiche Beiträge
    19. 01. 2017, 15:47

    Hallo Leute,

    ich habe eine Frage, die mir ein TypoScript-Profi sicher leicht beantworten kann, an der ich aber langsam verzweifle...

    Ich versuche per TypoScript ein "layout"-Element (also über layout definiert) anders auszuzeichnen als die normalen Layouts. Das klappt vom Prinzip her auch, ABER sobald ich das cObject mit CASE überschreibe, verliere ich alle bereits vorhandenen anderen Layout-Definitionen (so z. B.):

    1. tt_content.stdWrap.cObject = CASE
    2. tt_content.stdWrap.cObject {
    3. key.field = layout
    4. wrap = <div id="c{field : uid}"> | </div>
    5.  
    6. 100 = COA
    7. 100 {
    8. wrap = <div class="csc-akkordeon content_akkordeon_container">|</div>
    9.  
    10. 10 = TEXT
    11. 10.dataWrap = <div id="content_akkordeon_{field : uid}_header" onclick="add_css_class('content_akkordeon_{field : uid}_content', 'active'); add_css_class('content_akkordeon_{field : uid}_header', 'active');" class="content_akkordeon_header"> | </div>
    12. 10.field = header
    13.  
    14. 20 = TEXT
    15. 20.dataWrap = <div id="content_akkordeon_{field : uid}_content" class="content_akkordeon_content"> | </div>
    16. 20.field = bodytext
    17. 20.stdWrap.parseFunc = < lib.parseFunc_RTE
    18. }
    19. }

    Ich könnte jetzt jede andere layout-definition über sowas wie das nachfolgende TypoScript nachbauen, aber es muss doch möglich sein, die normalen Definitionen (layout 0, layout 1, etc.) zu behalten und trotzdem ein neues hinzuzufügen... das hier ist einfach ganz schön aufwendig und mach ich was falsch, mach ich mir das Rendering der Seite nachher total kaputt:

    1. tt_content.stdWrap.cObject {
    2. 0 = COA
    3. 0 {
    4. 10 = TEXT
    5. 10.wrap = <h2>|</h2>
    6. 10.value = {field : header}
    7. 10.value.insertData = 1
    8.  
    9. 20 = TEXT
    10. 20.wrap = <div class="ce-textpic ce-right ce-intext">|</div>
    11. 20.innerwrap = <div class="ce-bodytext">|</div>
    12.  
    13. 20.value = {field : bodytext}
    14. 20.value.insertData = 1
    15. 20.stdWrap.parseFunc = < lib.parseFunc_RTE
    16. }
    17. }

    Kann ich ihm nicht einfach sagen, er soll die "normalen" Definitionen in mein CASE übernehmen?
    Ich hätte gedacht, das geht dann z. B. so:

    1. temp_tcsc = tt_content.stdWrap.cObject
    2. (...)
    3. tt_content.stdWrap.cObject.0 < temp_tcsc.0
    4. tt_content.stdWrap.cObject.1 < temp_tcsc.1
    5. tt_content.stdWrap.cObject.2 < temp_tcsc.2

    Aber das will leider nicht so, wie ich das gerne hätte. Kann mir jemand sagen, wie man das umsetzen kann?

    Viele Grüße und vielen Dank schonmal im Voraus an alle die antworten :)
    *Fuchur*


  • 1
  • Fuchur84 Fuchur84
    T3PO
    0 x
    17 Beiträge
    0 Hilfreiche Beiträge
    20. 01. 2017, 18:31

    Weiß wirklich niemand einen Rat dazu? Ich komme leider einfach nicht weiter... :(

    Viele Grüße und vielen Dank für jede Antwort, die Ihr mir geben könnt...
    Gerald

  • 1