我正在开发一个基本插件,为列、按钮、面板等添加短代码。这里没有什么新鲜事。无论如何,我没有改变wpautop;我试着删除它并推迟它-没有变化。所使用的所有短代码的情况是,第一段没有包装在p标记中(p标记实际上直接出现在第一段之后,并且为空),但同一短代码中第一段之后的所有段落都包装在p标记中。我需要弄清楚为什么第一段没有包装好。
功能:
function vc_shortcode_panel($atts, $content = null) {
extract( shortcode_atts( array(
\'type\' => \'\'
), $atts) );
return \'<div class="panel \' . $type . \'">\' . do_shortcode( trim($content) ) . \'</div>\';
}
add_shortcode(\'panel\', \'vc_shortcode_panel\');
短代码:[panel type=""]paragraph 1
paragraph 2[/panel]
输出如下所示:<div class="panel">
paragraph 1
<p></p>
<p>paragraph 2</p>
</div>
我知道如果我在[面板]和第一段之间添加一个换行符,那么它会将第一段包装在一个p标记中。但是,短代码不需要换行符就可以正确格式化吗?我做错了什么?谁能告诉我为什么会这样?