Questions & Answers

SOLVED
akram
I'm new here

Zugriff auf CONTENTAREALIST Elemente??

Jump to solution

Hallo,

ich habe 2 Absatzvorlagen "item" und Absatz "gal"

Absatz "item" besteht aus 2 Eingabe Komponenten (String Eingabe โ€žbild_nameโ€œ , und Input Picture โ€žst_bildโ€œ).

Absatz "gal" beinhaltet u.a. Input CONTENTAREALIST โ€žbilderโ€œ

  <CMS_INPUT_CONTENTAREALIST name="bilder" hFill="yes">

     <LANGINFOS>  ...     </LANGINFOS>

     <SOURCES>

       <TEMPLATE name="item"/>

     </SOURCES>

  </CMS_INPUT_CONTENTAREALIST>

 

Die Frage ist wie kann ich in die html Ausgabe der 2ten Absatz auf die Elemente der ersten Absatz zugreifen bzw. auf โ€žbild_nameโ€œ und โ€žst_bildโ€œ??

Ich hab damit versucht:   

     $CMS_FOR(item,bilder)$

        <img title="$CMS_VALUE(item.getData().get("bild_name"))$"  src="$CMS_REF(item.getData().get("st_bild"))$">

     $CMS_END_FOR$

es hat aber nicht geklappt, kรถnnte jemand bitte einen Tipp geben, wie ich das realisieren kรถnnte.

Danke

0 Kudos
1 Solution

Accepted Solutions

Und wenn der Aufruf dann noch etwas optimiert wird, sollte es eigentlich funktionieren:

$CMS_VALUE(item.getData().get("bild_name").editor.get(#global.language))$

๐Ÿ™‚

View solution in original post

0 Kudos
8 Replies
MarcusDau
Occasional Collector

Hy!

Kleiner Tipp: die Ausgabe des Bildes erfolgt in dem Absatz "item". Zweiter Tipp: du speicherst das ja sicherlich in einer Datenquelle, wo es dann ein Mapping von Eingabekomponente zu Datenquellen-Feld gibt.

Im Absatz "gal" iterierst Du wie folgt:

$CMS_FOR(item,#row.FELDNAME_BILD)$

$CMS_VALUE(item)$

$CMS_END_FOR$

Ich denke, damit solltest Du weiterkommen.

GrรผรŸe

Marcus

0 Kudos

Hallo Marcus,

danke fรผr deine Antwort, das hilft leider nicht. Ich benutze keine Datenquelle fรผr die Speicherung.

0 Kudos
MarcusDau
Occasional Collector

Hy Akram!

a) Funktioniert deine CMS_FOR-Schleife?

$CMS_FOR(item,bilder)$

$CMS_VALUE(#for.index)$

$CMS_END_FOR$

Gibt er da die richtige Anzahl an Werten zurรผck?

b) Wenn ja, dann sollte doch eigentlich der Aufruf $CMS_VALUE(item)$ reichen, wenn Du meinen ersten Tipp aus dem anderen Kommentar umgesetzt hast. Die Ausgabe erfolgt in der Absatzvorlage item.

GrรผรŸe

Marcus

0 Kudos
MarcusDau
Occasional Collector

Guck Dir auch mal diesen Thread hier an:

https://community.e-spirit.com/message/1280

Der sollte Dir auch helfen!

0 Kudos

Hi Marcus,

die For Schleife Funktioniert, und gibt schon die Richtige Anzahl der Elemente zurรผck, auch die Ausgabe $CMS_VALUE(item)$ funktioniert. Aber das Problem ist, aus der CONTENTAREALIST als Ausgabe brauche ich maximal nur 3 Bilder als Thumbnails, aber alle Bilder Namen als Download links sollen neben die Thumbnails ausgegeben werden.

Also z.B. ein CONTENTAREALIST die 10 Bilder enthรคlt, der Redakteur soll die Mรถglichkeit haben wie viele Thumbnails in der Ausgabe dargestellt werden kรถnnen (min.1 und Max.3), dann soll in der Ausgabe 1,2 oder 3 Bilder ausgegeben + Alle 10 Bilder Namen als Download Links.

Wenn die Ausgabe des Bildes auch in dem Absatz "item" erfolgen muss, dann werden alle "10" Bilder ausgegeben!!

0 Kudos

Hallo,

um die gewรผnschte Ausgabe zu erzeugen muss in der Ausgabe lediglich noch ein IF-Statement eingebaut werden z.B. so:

$CMS_FOR(item,bilder)$

     $CMS_IF(#for.index <= set_maxCount)$

          <img title="$CMS_VALUE(item.getData().get("bild_name"))$" src="$CMS_REF(item.getData().get("st_bild"))$">

     $CMS_ELSE$

          <a href="#">Download Link</a>

     $CMS_END_IF$

$CMS_END_FOR$

Und wenn der Aufruf dann noch etwas optimiert wird, sollte es eigentlich funktionieren:

$CMS_VALUE(item.getData().get("bild_name").editor.get(#global.language))$

๐Ÿ™‚

0 Kudos

Jetzt hat es endlich geklappt Smiley Happy

es lag an die .editor.get(#global.language)

Ohne (.editor.get(#global.language) ) bekomme ich in die html Ausgabe sowas:

<div class="list_img_link_img">

                <cms_value name="bild_name"><lang set="1" id="ยง"><text>bild1</text></lang></cms_value>

                <img src="" alt="..." title="...">

....

        </div>

Vielen Dank

0 Kudos

Type a product name