it-swarm.com.de

WordPress fügt br zwischen meinen Shortcode ein

Ich habe ein Problem, bei dem mein Markup falsch gerendert wird (mehr Platz wegen <br />), da WordPress <br /> überall dort hinzufügt, wo Zeilenumbrüche auftreten

z.B.

[x]
  [y]Hello world[/y]
  [y]A test[/y]
[/x]

Im Handler für x sieht der $content so aus

<br />
[y]Hello world[/y]
<br />
[y]A test[/y]
<br />

Soll ich wohl alle Zeilenumbrüche entfernen?

UPDATE

Mir fällt auf, dass keine Zeilenumbrüche auftreten

[x][y]Photoshop[/y][y]Notepad++[/y][/x]

[y]Notepad++[/y] wird nicht als Shortcode gerendert. Ich muss ein Leerzeichen haben

[x][y]Photoshop[/y] [y]Notepad++[/y][/x]
                   ^

Ist es?

3
JM at Work

bevor Sie Ihren Shortcode registrieren, fügen Sie den Filter zum Inhalt für unautop hinzu:

add_filter( 'the_content', 'shortcode_unautop' );

Tun Sie dies auch für die Bereiche, z. B. Auszüge oder Widgets, wenn Ihr Shortcode zu diesen Bereichen hinzugefügt wird.

1
bueltge

Wenn Sie sich im Post-Editor befinden, drücken Sie CTRL + ENTER, wenn Sie zu einer neuen Zeile wechseln. Dadurch wird WordPress angewiesen, dem Code kein <br />-Tag hinzuzufügen.

1
Harley Barnes

Standardmäßig sollten keine br-Tags vorhanden sein! Wenn Sie jedoch Inhalte erhalten, ohne diese überhaupt zu verwenden, fügen Sie esc_attr oder esc_html hinzu, bevor Sie die Variablen zurückgeben, die die Werte Ihres Shortcodes enthalten

0
Soykot