Carousel aus den Resourcen der Seite

  • dom dom
    Padawan
    1 x
    35 Beiträge
    1 Hilfreiche Beiträge
    13. 06. 2013, 04:50

    Hallo,

    mit folgendem TS habe ich es nun geschafft, dass ein Bootstrap Carousel aus den Ressourcen der Seite aufgebaut wird und dabei auch noch Titel und Beschreibung der Ressource (Bild) ausgegeben werden:

    1. lib.carousel = FILES
    2. lib.carousel {
    3. references {
    4. table = pages
    5. uid = 1
    6. fieldName = media
    7. }
    8.  
    9. renderObj = COA_INT
    10. renderObj {
    11. 10 = TEXT
    12. 10.data = file:current:publicUrl
    13. 10.wrap = <div class="item"><img src="|"/>
    14. 20 = TEXT
    15. 20.data = file:current:title
    16. 20.wrap = <div class="container"><div class="carousel-caption"><h1>|</h1>
    17. 30 = TEXT
    18. 30.data = file:current:description
    19. 30.wrap = <p class="lead">|</p></div></div></div>
    20. }
    21. }

    Mir fehlt noch die Ausnahme im Wrap für das erste Bild, denn dort muss eigentlich <div class="item active"> stehen. Ich habe schon gesucht ob ich listnum verwenden kann bzw. es ähnliche Elemente wie CUR gibt, die man aus den Menüs kennt. Bitte um Hilfe.

    Gruss
    Dom

    P.S.: Wenn das jemand verwenden will, sollte er/sie beachten, dass noch folgendes ins Template gehört. Auf die "id=intro"(*) wird dann gemappt:

    1. <div id="carousel" class="carousel slide">
    2. <div id="intro" class="carousel-inner">*</div>
    3. <a class="left carousel-control" href="#carousel" data-slide="prev">‹</a>
    4. <a class="right carousel-control" href="#carousel" data-slide="next">›</a>
    5. </div>


  • 1
  • toifel toifel
    Jedi-Ratsmitglied
    0 x
    831 Beiträge
    96 Hilfreiche Beiträge
    14. 06. 2013, 09:57

    Soweit ich weiss geht das über FILES noch nicht ohne Weiteres - habe zumindest nichts gefunden.
    Ich habe es so gelöst, dass ich zuerst das "image"-Feld im Register gespeichert habe. Sieht dann so aus:

    1. renderObj = COA
    2. renderObj {
    3. 10 = FILES
    4. 10 {
    5. references {
    6. table = tt_content
    7. uid.data = field:uid
    8. fieldName = image
    9. }
    10.  
    11. renderObj = COA
    12. renderObj {
    13. 10 {
    14. savedString.cObject = TEXT
    15. savedString.cObject.data = field:image
    16. }
    17. }
    18. }
    19. }

    Darauf kann man dann wieder das normale "split" wie in 4.X anwenden und hat die ganzen gewohnten Funktionen.

    Das Snippet stammt noch aus 6.0.1 Zeiten - wenn es mitlerweile eine einfachere Lösung gibt würde ich diese auch gern wissen!

  • dom dom
    Padawan
    0 x
    35 Beiträge
    1 Hilfreiche Beiträge
    14. 06. 2013, 10:20

    Hallo Toifel,

    danke für Deinen Tipp. Ich habe heute früh nochmal per try and error diverse Sachen ausprobiert und siehe da, dies funktioniert auch:

    1. lib.carousel = FILES
    2. lib.carousel {
    3. references {
    4. table = pages
    5. uid = 1
    6. fieldName = media
    7. }
    8.  
    9. renderObj = COA_INT
    10. renderObj {
    11. 10 = TEXT
    12. 10.data = file:current:publicUrl
    13. 10.wrap = <div class="item active"><img src="|"/>|*|<div class="item"><img src="|"/>|*|<div class="item"><img src="|"/>
    14. 20 = TEXT
    15. 20.data = file:current:title
    16. 20.wrap = <div class="container"><div class="carousel-caption"><h1>|</h1>
    17. 30 = TEXT
    18. 30.data = file:current:description
    19. 30.wrap = <p class="lead">|</p></div></div></div>
    20. }
    21. }

    Also es wird folgendermaßen gewrappt: erstes Element|*|mittlere Elemente|*|letztes Element

    Hoffe es hilft. Gruss
    Dom

  • toifel toifel
    Jedi-Ratsmitglied
    0 x
    831 Beiträge
    96 Hilfreiche Beiträge
    14. 06. 2013, 14:46

    Stimmt, wenn Du nur den ersten und letzten Eintrag entsprechend markieren willst ist das wahrscheinlich sogar die einfachste Lösung. War in meinem Fall leider etwas anders, da ich die Anzahl der auszulesenden Bilder begrenzen musste ;)

  • suti84 suti84
    Typ im Roten Hemd
    0 x
    2 Beiträge
    0 Hilfreiche Beiträge
    26. 05. 2014, 20:51

    hallo
    währe super der code.
    versuche das in 6.2 zu verwenden. bekomme aber immer bei img src "Error: no file object"
    währe sehr dankbar um eine lösung.

  • suti84 suti84
    Typ im Roten Hemd
    0 x
    2 Beiträge
    0 Hilfreiche Beiträge
    26. 05. 2014, 20:57

    habe den fehler gefunden
    die zeile
    10.data = file:current<i class="mmforum-iconset-20-razz"></i>ublicUrl
    muss so heissen
    10.data = file:current:[b]p[/b]ublicUrl

    das ich das nicht gleich gesehen habe grrrrr

  • 1