WordPress verwandelt <br> zu <p></p> im Feed

tl;dr:
Es gibt wohl gerade keine Lösung für das kleine Problem. Man will für Breaks möglicherweise konstant <p><p/> statt <br /> nutzen. Im Texteditor aber wiederum <br />, da diese für den Feed in <p><p/> umgewandelt werden (und direkte <p><p/> gelöscht werden).


Hallo WordPress Kenner*innen

Ich bin regelmässig darum bemüht, dass die Shownotes (“Beschreibungen”) meines Podcasts in möglichst allen Podcatchern ansehnlich daherkommen. Da jeder Podcatcher diese jedoch wieder anders darstellt, musste ich manchmal etwas basteln.
Jetzt habe ich aber gemerkt, dass auch WordPress heimlich Schuld sein kann.

Usecase
Ich befinde mich im WordPress Backend im Texteditor zu einer Episode und habe folgendes drin (vereinfacht):

<h4>Weitere Informationen:</h4>
    <ul>
     	<li>Wichtiger Link 1</li>
     	<li>Wichtiger Link 2</li>
    </ul>

<br />  

<h4>Musik:</h4>
    <ul>
     	<li>Tolles Lied</li>
    </ul>

(Ja, ich brauche da ein <br />, weil sonst nicht jeder Podcatcher da eine Lücke lässt.)

Im Feed wird dann aber ausgespuckt (vereinfacht):

<h4>Weitere Informationen:</h4>
<ul>
<li>Wichtiger Link 1</li>
<li>Wichtiger Link 2</li>
</ul>
<p></p>
<h4>Musik:</h4>
<ul>
<li>Tolles Lied</li>
</ul>

Kurz: Der <br /> Tag wird zu <p></p>. Sieht dann unregelmässig und unschön aus.

Diese automatische Umwandlung mag vielleicht irgendwo nützlich sein, wenn ich Blogartikel schreibe. In meinem Podcast-Feed will ich das aber nicht. Ich will, dass WordPress genau das an den Feed übergibt, was ich in den Texteditor schreibe.

  • Wie bekomme ich diese Automation für den Podcast-Feed deaktiviert?
  • Oder Plan B: Wie bekomme ich das generell deaktiviert und mit welchen Auswirkungen auf sonstige Seiten (Beispiel) müsste ich dann rechnen?

Danke für eure Hilfe!


Update:
Ich bin, also totaler Coding-Laie, auf folgende Info gestossen: https://codex.wordpress.org/Function_Reference/wpautop
Bin ich da (zumindest für Plan B) auf dem richtigen Weg?

Update 2: Hilft nicht.

2 „Gefällt mir“

Vielleicht hilft das: https://codex.wordpress.org/Function_Reference/wpautop#Disabling_the_filter

1 „Gefällt mir“

Da bin ich just drauf gestossen. :sweat_smile:
Das wäre wohl die generelle Herangehensweise (aka Holzahmmer). Ich werd’s ausprobieren.


Update:

Dafür gibt’s sogar ein kleines praktisches Plugin namens “Don’t Muck My Markup”. Damit lässt sich diese Funktion individuell pro Post deaktivieren. Und in der Tat: Der <br /> Tag bleibt nun im Post auf der Webseite. So weit, so gut.

Doch leider scheint das - warum auch immer - nicht zu helfen. Ich sehe Unterschiede bei den betroffenen Episoden auf der Webseite - aber nicht im Feed. Weiterhin wird dort <p></p> statt <br /> eingefügt. Und damit wäre ich nun wieder am Ende meines Lateins.

Nachgeben und stattdessen alle <br> Tags durch leere <p></p> ersetzen wäre wohl HTML-mässig böse?

1 „Gefällt mir“

Sorry, die Ergänzung hatte ich übersehen :slight_smile: .

Versuch mal das Plugin: https://wordpress.org/plugins/tinymce-advanced/

In den Einstellungen gibt es die Option “Keep paragraph tags”.

Hab ich nun auch probiert. Danke für den Tipp!
Das Plugin wirkt sich nur auf den visuellen Editor aus, nicht auf den Texteditor.
Aber auch das hilft dann nicht wirklich. Breaks werden dort mit <p>&nbsp;</p> erstellt. Immerhin wird dieser dann auch so in den Feed übertragen.
Füge ich im Texteditor einen <br> ein, wird dieser wie gehabt zu <p></p>.

Wenn das auch nicht hilft, dann das hier:

erste zeile
<br class="" />noch eine zeile

Leere Attribute sind laut StackOverflow (https://stackoverflow.com/questions/30748847/is-an-empty-class-attribute-valid-html) auch valide.

Danke abermals für den Tipp. Das funktioniert fast. Es ist wie verhext. :joy:
Fügt man im Texteditor <br class="" /> ein, wird im Feed <p><br class="" /></p> daraus. :sweat_smile:
Es scheint mir, als will mich WordPress schlicht zu leeren Paragraphen zwingen. Vielleicht sollte ich mich einfach fügen, so schlimm kann’s nicht sein, solange <p></p> oder <p>&nbsp;</p> legal sind.

Wenn ich mich zwischen beiden pseudo-leeren Paragraphen entscheiden müsste: Lieber ganz leer oder mit &nbsp; füllen?


Ich habe mir die letzt Frage gerade selber beantwortet:
Fügt man selber <p></p> in den Texteditor, so wird das für den Feed gelöscht. :sweat_smile:
Entsprechend funktioniert nur <p>&nbsp;</p> .

1 „Gefällt mir“

Mehr fällt mir jetzt nicht mehr ein. Ich würde <p>&nbsp;</p> nehmen, sonst wäre Zeilenhöhe bei 0.

Danke für deine Hilfe.
Ich kann nun im Template <p></p> setzen, was im Feed auch so bleiben wird. Wenn ich jetzt im Texteditor <br /> setze, wird das im Feed zu <p></p>. Somit habe ich am Ende im Feed überall konsistente Breaks (überall <p></p>) - Ziel erreicht, auch wenn etwas Forschergeist nötig war. Das Problem ist nicht gelöst, aber ich kann damit leben.

Vielleicht werde ich mal ein “How to hübsche Shownotes im Podcatcher” verfassen. :thinking:

3 „Gefällt mir“

Um welche/n Podcatcher geht es dabei?

Das würde sich dann generell an alle richten. In allen Podcatchern gut aussehen, ist vielleicht nicht möglich. Teilweise stellen sie HTML schlicht zu unterschiedlich dar. Dafür müsste man wohl CSS mitschicken können.