Questions & Answers

SOLVED
Sebastian_N
I'm new here

DOM - Editor, Abfrage in einem Standardabsatz

Jump to solution

Hallo Community,

eine kleine Frage, die eventuell mit euren pfiffigen Ideen oder Best-Practices ganz leicht zu lรถsen ist.

Wir haben im DOM-Editor einen Standardabsatz, dieser erzeugt automatisch einen Absatz als p-Tag.

Format-Template-Code:

<p>$CMS_VALUE(#content)$</p>

Jedoch ist es auch mรถglich eine Liste innerhalb des DOM-Editors einzufรผgen. Der resultierende Quelltext ist dann aber:

HTML-Ausgabe-Code: (Firefox 3.6)

<p> </p>

<ul>

     <li> </li>

     <li> </li>

</ul>

Nun wรผrden wir gern den leeren p-Tag unterdrรผcken, wenn in "#content" eine Liste enthalten ist. Sicherlich kรถnnten wir auch einfach eine leere Absatzvorlage fรผr Listen anlegen, aber das wรคre fรผr die Redakteure weniger komfortabel.

Zur Lรถsungfindung hab ich mal geschaut, was das #content-Systemobjekt fรผr eine Klasse liefert:

de.espirit.firstspirit.generate.ElementRenderer$ChildPrinter

Leider konnte ich der API dazu keine Informationen entlocken.

Habt ihr vielleicht eine Idee wie man das Problem elegant lรถsen kann?

Vielen Dank,

Sebastian

1 Solution

Accepted Solutions
feddersen
Community Manager
0 Kudos
4 Replies
feddersen
Community Manager

Es gibt bereits einen Blogbeitrag zum Thema: CMS_INPUT_DOM - Listoutput without spanning 'p' tags

0 Kudos

Hallo Herr Feddersen,

leider konnte mir auch der Blogeintrag nicht weiterhelfen.

In der Ausgabe soll bei einem Listenelement gar kein P- Tag ausgegeben werden. Da unsere P-Tags mit einem Margin versehen sind, entsteht dadurch ein unschรถner Abstand zwischen einer รœberschrift und einer Liste.

Der Resultierende Quellcode mit der Empfehlung aus dem Blog lautet:

<div class="text-bild-absatz">

    <h2>Testseite fรผr Listen</h2>

    <div class="running_text">

        <h3>รœberschrift</h3>

            <p>Text 123</p>

        <p>

        </p>   

        <ul>

            <li>Eins</li>

            <li>Zwei</li>

            <li>Drei</li>

            <li>Vier</li>

            <li>Fรผnf</li>

        </ul>

    </div>

</div>

Ausgabe (FF):

Listen.JPG

0 Kudos

Die letzte Zeile in der "Explanation" sorgt dafรผr, dass die leeren p Tags entfernt werden.

$CMS_SET(output,startTag + #content + endTag)$$CMS_VALUE(output.replaceAll(startTag+endTag,""))$ --> Eliminates all empty (not needed) tags of the section formattemplate [in the example <p></p>]

0 Kudos

Hallo Herr Feddersen,

das hatte ich auch so umgesetzt. Jedoch wurden die p-Tags nicht entfernt, weil ich den Sourcecode formatiert habe. Eine CMS-TRIM Funktion hat das Problem gelรถst.

Nun funktioniert alles wunderbar.

Vielen Dank!

Type a product name