Antworten auf deine Fragen:
Neues Thema erstellen

Shortcode wird durch p-Tag umschlossen und br-Tags eingefügt

lachender_engel

Aktives Mitglied

Hallo, Zusammen

In einem Theme hab eich mir ein paar Shortcodes eingebaut. Jedoch habe ich das Problem, dass teilweise p-Tags und br-Tags erscheinen, wo sie nicht erscheinen sollen.
Mein Shortcode sieht zum Beispiel so aus:
PHP:
add_shortcode( 'half_page', function ($atts, $content = null) {
    extract( shortcode_atts( array(
        'class' => '',
    ), $atts ) );
    return '<div class="eight columns '.$class.'">'.do_shortcode($content).'</div>';
});
Im Editor trage ich ein
Code:
[half_page]Hier steht mein Text

Und hier eine weitere Zeile[/half_page][half_page]
Und hier der Text für die zweite Spalte.

Und eine weitere Zeile.[/half_page]
Rufe ich dann die Seite auf, erscheint das hier im Quellcode der Seite
HTML:
<p></p>
<div class="eight columns ">Hier steht mein Text<br>
Und hier eine weitere Zeile</div>
<br>
<div class="eight columns ">Und hier der Text für die zweite Spalte.<br>
Und eine weitere Zeile.</div>
<p></p>
Was mich eben stört sind die p-Tags vor und nach dem Content und das br zwischen den beiden Shortcodes.
Ich glaube daraus zu erkennen, dass WordPress den Content generell mit einem p-Tag umschließt und - aus welchen Gründen auch immer - die Shortcodes mit einem br trennt.
Hat jemand eine Idee - bzw. gibt es dazu eine WP-Funktion (im Codex habe ich nichts gefunden) - die diese ungewollten Zusatzzeichen entfernt?
Wichtig, p- und br-Tag IM Text sollen natürlich erhalten bleiben.
 

Pixelaner

Der Pixelaner

Hi,

füg mal folgenden Code in deine functions.php ein und prüfe deinen Shortcode erneut.

PHP:
function shortcode_empty_paragraph_fix($content) {  
    $array = array (
        '<p>[' => '[',
        ']</p>' => ']',
        ']<br />' => ']'
    );
    $content = strtr($content, $array);
    return $content;
}
add_filter('the_content', 'shortcode_empty_paragraph_fix');

MfG
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.614
Beiträge
1.538.351
Mitglieder
67.525
Neuestes Mitglied
mgtaucher
Oben