kschlapka
I'm new here

dl Liste im Dom umsetzen

Jump to solution

Hallo alle,

ich habe mir die Dokumentation der CMS_INPUT_DOM Elemente bezüglich Listen sehr genau angeschaut und konnte damit auch eine ol Liste simpel umsetzen. Allerdings benötige ich auch die Möglichkeit, eine dl (Definitionsliste) umzusetzen.

Diese hat allerdings eine Eigenart und unterscheidet sich zu den ul und ol Listen. Hier wird statt eines li Elementes ein dt (Definition-Term) und dd (Defintion-Description) genutzt.

Beispiel:

<dl>

     <dt>Hund:</dt>

     <dd>Dackel</dd>

</dl>

Auch mehrere Tags der gleichen Sorte sind aufeinanderfolgend erlaubt, so können beliebig viele dt Tags aufeinander Folgen, ohne dd Tag dazwischen.

Jetzt ist es ja nur möglich, die Sorte der Liste per listConfig vorzugeben. Hier wäre es ein leichtes, den ul Tag gegen den dl Tag nach Benutzerauswahl zu ändern. Allerdings ist es mir nicht möglich, die Tags dt oder dd innerhalb der dl zu setzen.

Meine Idee bisher war, dass ich in der Formatvorlage ul im gegebenen Falle gegen das Tag gegen dl austausche und der Benutzer im Dom Element den Inhalt der Liste per Formatvorlage dann eben das dt oder das dd Tag entsprechend für den Inhalt setzen muss (ich überspringe natürlich in diesem Falle die Ausgabe des li Tags).

Allerdings ist das für den Redakteuren natürlich nicht so einfach zu überschauen und auch Fehler sind sehr schnell möglich. So kann schnell eine einzufügende Formatvorlage eines Tags vergessen werden.

Hat jemand vielleicht schon mal eine Umsetzung einer dl Liste im Dom Element realisiert oder hat eine Idee zu einer Redakteur freundlichen Umsetzung? Bin für jede Hilfe dankbar.

Viele Grüße

Kevin

1 Solution

Accepted Solutions
felix_reinhold
Returning Responder

Hi Kevin,

Wenn ich es richtig verstehe ist das eigentliche Problem ja, dass der Redakteur für einen einzelnen Listeneintrag nicht zwischen dt und dd wählen kann.
Da das Absatzformat innerhalb von Listen nicht für einzelne Elemente geändert werden kann würde ich sowas auf eine der folgenden Arten umsetzen:

  • Du nimmst in deine Listconfig noch so etwas in der Art auf:
    • definitions:Definitions[type=text;allowed=1234567890,]
    • Damit kann der Redakteur Indizes vergeben, wo sich eine dd und keine dt in der Liste befindet. Das kannst du in der li-Formatvorlage dann abfragen.
    • Ist gerade bei längeren Listen nicht wirklich user-friendly, oder wenn Einträge am Anfang/in der Mitte  der Liste nachträglich eingefügt werden.
  • Du definierst ein Prefix, mit dem der Redakteur dt und dd unterscheidet
    • bspw. "#" - definiert der Redakteur seinen Eintrag in einer dl mit "#" am Anfang fängst du das in der li-Formatvorlage ab und schreibst den entsprechenden Tag raus.
  • Du definierst eine neue Formatvorlage für dt oder dd
    • Der Redakteur setzt für den Text innerhalb des Listeneintrags (oder für einen Leerstring am Anfang des Listeneintrags) ein neues Format, dass dann entsprechend den Tag umbiegt.
  • Du fügst dls über eine eigene Linkvorlage ein. In der Vorlage hast du dann einfach ein FS_CATALOG für die dl und die Kinder an denen du den Inhalt definieren kannst und und als Typ dt und dd wählen kannst.
    • Die Lösung ist ggf. etwas flexibler als die anderen und du kannst die definierte Liste ggf. besser validieren
    • Nachteil: Der Inhalt der Liste ist im DOM-Editor nicht sichtbar.
  • Du legst organisatorisch fest, dass Kinder innerhalb der dl nur über Linkvorlagen eingefügt werden dürfen. Als Linkvorlagen hast du dann dt und dd.
    • Nachteil: Auch hier siehst du den Inhalt im DOM-Editor ggf. nicht - nämlich dann, wenn die dt- und dd-Einträge nicht nur reinen Text enthalten dürfen, sondern ebenfalls ein DOM brauchen.

Das so als erste Ideen, die ich dazu hätte.

"Allerdings ist das für den Redakteuren natürlich nicht so einfach zu überschauen und auch Fehler sind sehr schnell möglich. So kann schnell eine einzufügende Formatvorlage eines Tags vergessen werden."

Dass der Redakteur zumindest dt oder dd definieren muss wirst du ja nicht umgehen können, da die Struktur ja nicht fix bspw. abwechselnd ist.

Viele Grüße

Felix

View solution in original post

2 Replies
felix_reinhold
Returning Responder

Hi Kevin,

Wenn ich es richtig verstehe ist das eigentliche Problem ja, dass der Redakteur für einen einzelnen Listeneintrag nicht zwischen dt und dd wählen kann.
Da das Absatzformat innerhalb von Listen nicht für einzelne Elemente geändert werden kann würde ich sowas auf eine der folgenden Arten umsetzen:

  • Du nimmst in deine Listconfig noch so etwas in der Art auf:
    • definitions:Definitions[type=text;allowed=1234567890,]
    • Damit kann der Redakteur Indizes vergeben, wo sich eine dd und keine dt in der Liste befindet. Das kannst du in der li-Formatvorlage dann abfragen.
    • Ist gerade bei längeren Listen nicht wirklich user-friendly, oder wenn Einträge am Anfang/in der Mitte  der Liste nachträglich eingefügt werden.
  • Du definierst ein Prefix, mit dem der Redakteur dt und dd unterscheidet
    • bspw. "#" - definiert der Redakteur seinen Eintrag in einer dl mit "#" am Anfang fängst du das in der li-Formatvorlage ab und schreibst den entsprechenden Tag raus.
  • Du definierst eine neue Formatvorlage für dt oder dd
    • Der Redakteur setzt für den Text innerhalb des Listeneintrags (oder für einen Leerstring am Anfang des Listeneintrags) ein neues Format, dass dann entsprechend den Tag umbiegt.
  • Du fügst dls über eine eigene Linkvorlage ein. In der Vorlage hast du dann einfach ein FS_CATALOG für die dl und die Kinder an denen du den Inhalt definieren kannst und und als Typ dt und dd wählen kannst.
    • Die Lösung ist ggf. etwas flexibler als die anderen und du kannst die definierte Liste ggf. besser validieren
    • Nachteil: Der Inhalt der Liste ist im DOM-Editor nicht sichtbar.
  • Du legst organisatorisch fest, dass Kinder innerhalb der dl nur über Linkvorlagen eingefügt werden dürfen. Als Linkvorlagen hast du dann dt und dd.
    • Nachteil: Auch hier siehst du den Inhalt im DOM-Editor ggf. nicht - nämlich dann, wenn die dt- und dd-Einträge nicht nur reinen Text enthalten dürfen, sondern ebenfalls ein DOM brauchen.

Das so als erste Ideen, die ich dazu hätte.

"Allerdings ist das für den Redakteuren natürlich nicht so einfach zu überschauen und auch Fehler sind sehr schnell möglich. So kann schnell eine einzufügende Formatvorlage eines Tags vergessen werden."

Dass der Redakteur zumindest dt oder dd definieren muss wirst du ja nicht umgehen können, da die Struktur ja nicht fix bspw. abwechselnd ist.

Viele Grüße

Felix

Hey Felix,

vielen Dank für deine Nachricht, hast mir noch ein paar sehr hilfreiche Ideen gegeben. Schade, dass es keine native Lösung dazu gibt aber so kann man es wenigstens mit einer kleinen Erklärung für den Redakteuren ermöglichen.

Die Idee mit dem Prefix hat mir besonders gut gefallen, vielen dank dafür!

Damit ist das Thema dann auch quasi durch.

Viele Grüße

Kevin

0 Kudos