TimoMeister
Returning Responder

nummerierte Liste (<ol>) im DOM-Editor

Jump to solution

Hallo zusammen,

ich komme einfach nicht weiter. Hoffe es kann mir einer helfen. Auf unserer Seite soll es möglich sein Listen zu erstellen - nummerierte und unnummerierte. Habe es mit der <CMS_INPUT_DOM> Funktion gelöst. Wenn ich nun eine Liste erstellen will, wird immer ein <ul>-Tag generiert. Wie bekomme ich es hin, dass ich aussuchen kann ob nun ein <ul> oder ein <ol> Tag generiert werden soll?

Hier mein Code:

<CMS_INPUT_DOM

    name="st_text"

    hFill="yes"

    list="yes"

    listConfig="style:Listenart[1:unnummeriert|2:nummeriert]"

    rows="10"

    useLanguages="yes">

    <FORMATS>

      <TEMPLATE name="h3"/>

      <TEMPLATE name="p_space"/>

    </FORMATS>

    <LANGINFOS>

      <LANGINFO lang="*" label="Text" description=""/>

    </LANGINFOS>

    <LINKEDITORS>

      <LINKEDITOR name="normal_link"/>

      <LINKEDITOR name="download_link"/>

      <LINKEDITOR name="external_link"/>

      <LINKEDITOR name="internal_link"/>

    </LINKEDITORS>

  </CMS_INPUT_DOM>

Hoffe ich habe es verständlich erklärt 😉

Vielen Dank schon mal...

1 Solution

Accepted Solutions
hoebbel
Crownpeak employee

Hallo Herr Meister,

einfach in der  "ul" Formatvorlage folgendes benutzen:

<$CMS_SWITCH(#list.style)$ul$CMS_CASE(1)$ul$CMS_CASE(2)$ol$CMS_END_SWITCH$>$CMS_VALUE(#content)$</$CMS_IF(#list.style == 1)$ul$CMS_ELSE$ol$CMS_END_IF$>

ich habe mal die beiden Möglichkeiten zur Unterscheidung ($CMS_SWITCH$ und $CMS_IF$) benutzt. Bei 2 elementen ist CMS_IF eigentlich völlig ausreichend, wenn Sie aber mehr Styles benutzen wollen, also zum Beispiel so etwas:

$CMS_SET(set_liststart)$$CMS_IF(!#list.attr("start").isEmpty)$ start="$CMS_VALUE(#list.start)$"$CMS_END_IF$$CMS_END_SET$

<$CMS_SWITCH(#list.style)$ul type="square"$CMS_CASE(1)$ul type="disc"$CMS_CASE(2)$ol type="1"$CMS_VALUE(set_liststart)$$CMS_CASE(3)$ol type="a"$CMS_VALUE(set_liststart)$$CMS_CASE(4)$ol type="A"$CMS_VALUE(set_liststart)$$CMS_CASE(6)$ol type="I"$CMS_VALUE(set_liststart)$$CMS_CASE(8)$ul type="circle"$CMS_END_SWITCH$>

$CMS_VALUE(#content)$

</$CMS_IF(#list.style == 0 || #list.style == 1 || #list.style == 8)$ul$CMS_ELSE$ol$CMS_END_IF$>

dann lohnt sich auch die Verwendung von $CMS_SWITCH$ Smiley Wink

Die dazugehörige Konfiguration im DOM sieht beispeilsweise so aus:

        listConfig="style:Typ[4:Großbuchstaben|2:Zahlen|6:römische Zahlen|3:Kleinbuchstaben|8:Kreis|1:Scheibe|0:Quadrat],start:Zählungsbeginn"

        listDefaultConfig="mediaref=media:ListenPunkt,pre=o,style=4"

Viele Grüsse aus Dortmund,

  Holger Höbbel

View solution in original post

11 Replies
hoebbel
Crownpeak employee

Hallo Herr Meister,

einfach in der  "ul" Formatvorlage folgendes benutzen:

<$CMS_SWITCH(#list.style)$ul$CMS_CASE(1)$ul$CMS_CASE(2)$ol$CMS_END_SWITCH$>$CMS_VALUE(#content)$</$CMS_IF(#list.style == 1)$ul$CMS_ELSE$ol$CMS_END_IF$>

ich habe mal die beiden Möglichkeiten zur Unterscheidung ($CMS_SWITCH$ und $CMS_IF$) benutzt. Bei 2 elementen ist CMS_IF eigentlich völlig ausreichend, wenn Sie aber mehr Styles benutzen wollen, also zum Beispiel so etwas:

$CMS_SET(set_liststart)$$CMS_IF(!#list.attr("start").isEmpty)$ start="$CMS_VALUE(#list.start)$"$CMS_END_IF$$CMS_END_SET$

<$CMS_SWITCH(#list.style)$ul type="square"$CMS_CASE(1)$ul type="disc"$CMS_CASE(2)$ol type="1"$CMS_VALUE(set_liststart)$$CMS_CASE(3)$ol type="a"$CMS_VALUE(set_liststart)$$CMS_CASE(4)$ol type="A"$CMS_VALUE(set_liststart)$$CMS_CASE(6)$ol type="I"$CMS_VALUE(set_liststart)$$CMS_CASE(8)$ul type="circle"$CMS_END_SWITCH$>

$CMS_VALUE(#content)$

</$CMS_IF(#list.style == 0 || #list.style == 1 || #list.style == 8)$ul$CMS_ELSE$ol$CMS_END_IF$>

dann lohnt sich auch die Verwendung von $CMS_SWITCH$ Smiley Wink

Die dazugehörige Konfiguration im DOM sieht beispeilsweise so aus:

        listConfig="style:Typ[4:Großbuchstaben|2:Zahlen|6:römische Zahlen|3:Kleinbuchstaben|8:Kreis|1:Scheibe|0:Quadrat],start:Zählungsbeginn"

        listDefaultConfig="mediaref=media:ListenPunkt,pre=o,style=4"

Viele Grüsse aus Dortmund,

  Holger Höbbel

Vielen Dank! Das ist was ich gesucht habe...

0 Kudos

Wie kann man denn im DOM-Editor die Nummerierung anpassen? Wenn man Bullet auswählt, sieht man das im FS-Client nicht. Das HTML wird aber korrekt dargestellt.

0 Kudos

Hallo Martin,

Martin Reinhardt schrieb:

Wie kann man denn im DOM-Editor die Nummerierung anpassen? Wenn man Bullet auswählt, sieht man das im FS-Client nicht. Das HTML wird aber korrekt dargestellt.

Geht es bei Nummerierung anpassen um den Startpunkt der Aufzählung, also zum Beispiel ab 5?

Dann einfach unter Zählungsbeginn im Beispiel oben 5 eintragen Smiley Wink

[im Beispiel definiert durch start:Zählungsbeginn]

Für den Bullet benötigt man ein Bild, was den entsprechenden Punkt darstellt. Im Beispiel dient dazu das Bild listenPunkt [definiert durch mediaref=media:ListenPunkt]

Viele Grüsse aus Dortmund,

  Holger

0 Kudos

Ich möchte nur erreichen, dass der Redakteur im FS-Client die Nummerierung wie im Web sehen kann. Im Moment sehe ich da keine Listenaufzählung oder Nummern?

Was mache ich da falsch?

0 Kudos

Wenn der Parameter

listConfig="style:Typ[4:Großbuchstaben|2:Zahlen|6:römische Zahlen|3:Kleinbuchstaben|8:Kreis|1:Scheibe|0:Quadrat],start:Zählungsbeginn"

gesetzt ist, dann sollte es eigentlich automatisch gehen.

Neue Liste anlegen, Rechtsklick in die Liste und den Listentyp auf eine der OL Listen ändern. Die Anzeige im Client ist dann entsprechend.

Entscheidend ist hier, dass das Attribut "style" heißt, eine Liste "[]" als Auswahl hat und die einzelnen Listenpunkte Zahlen sind, wobei jede Zahl eine andere Listendarstellung erzeugt.

0 Kudos

Mein Code sieht aus:

<CMS_INPUT_DOM

    name="text"

    bold="yes"

    hFill="yes"

    italic="yes"

    list="yes"

    listConfig="style:Listenart[0:Bullet Points|2:Numbers]"

    rows="15"

    useLanguages="yes">

    <FORMATS>

      <TEMPLATE name="hometeaser"/>

      <TEMPLATE name="p"/>

      <TEMPLATE name="h3"/>

      <TEMPLATE name="h4"/>

      <TEMPLATE name="h5"/>

      <TEMPLATE name="colortext"/>

    </FORMATS>

    <LANGINFOS>

      <LANGINFO lang="*" label="Absatz" description="Bitte geben Sie einen Text ein."/>

    </LANGINFOS>

    <LINKEDITORS>

      <LINKEDITOR name="standardlink"/>

      <LINKEDITOR name="externallink"/>

      <LINKEDITOR name="downloadlink"/>

      <LINKEDITOR name="maillink"/>

    </LINKEDITORS>

  </CMS_INPUT_DOM>

Trotzdem werden keine Bullet Points angezeigt:

Untitled.jpg

irgendwie komisch

0 Kudos

Martin Reinhardt schrieb:

irgendwie komisch

Nö, eigentlich ist das das erwartete Verhalten. Ich zitiere mich mal selber:

Holger Höbbel schrieb:

Für den Bullet benötigt man ein Bild, was den entsprechenden Punkt darstellt. Im Beispiel dient dazu das Bild listenPunkt [definiert durch mediaref=media:ListenPunkt]

0 Kudos

ah verstehe, aber wenn ich das mit mediaref versuche geht es leider auch nicht

listConfig="style:Listenart[0:Bullet Points|2:Numbers]"

    listDefaultConfig="mediaref=media:itbk_button_selected,pre=o,style=0"

Bei Nummern wird auch nix angezeigt.

0 Kudos