it-swarm.com.de

Zusätzliche Absatz-Tags in einem umschließenden Shortcode

Ich habe einen Shortcode zum Erstellen von Spalten, sodass die Seite im Editor (Textansicht) so aussieht.

[two-column]<ul>
    <li>Annual statutory accounts preparation</li>
    <li>Independent Examination service</li>
    <li>Audit file preparation</li>
    <li>Gift Aid returns</li>
    <li>Payroll</li>
</ul>[/two-column]
[two-column]<ul>
    <li>Bookkeeping service</li>
    <li>Management accounts</li>
    <li>Charity Commission administration service</li>
    <li>OSCR administration service</li>
    <li>Companies House administration service</li>
</ul>[/two-column]

Leider sieht es auf der Seite so aus;

<p><div class="two-column">
<ul>
<li>Annual statutory accounts preparation</li>
<li>Independent Examination service</li>
<li>Audit file preparation</li>
<li>Gift Aid returns</li>
<li>Payroll</li>
</ul>
<p></div><br />
<div class="two-column">
<ul>
<li>Bookkeeping service</li>
<li>Management accounts</li>
<li>Charity Commission administration service</li>
<li>OSCR administration service</li>
<li>Companies House administration service</li>
</ul>
<p></div></p>
</div>

Jetzt möchte ich nicht alle <p>-Tags entfernen (durch Manipulieren von wpautop). Wie verarbeite ich diesen Shortcode?.

Die Kurzwahl;

function column_shortcode($atts = [], $content = null)
{
   $content = '<div class="two-column">'.$content.'</div>';

   return $content;
}

add_shortcode('two-column', 'column_shortcode');
1
Chris Pink

OK, es scheint, dass jemand diesen Weg beschritten hat und es gibt tatsächlich ... shortcode_unautop()

Job erledigt. Es sieht im Editor elegant aus und funktioniert in der Ausgabe.

Der Shortcode sieht jetzt so aus.

function column_shortcode($atts = [], $content = null)
{
   $content = '<div class="two-column">'.$content.'</div>';

   $content = shortcode_unautop($content);

   return $content;
}

add_shortcode('two-column', 'column_shortcode');
1
Chris Pink