Php 短代码中的p标记格式';wordpress的内容

Php 短代码中的p标记格式';wordpress的内容,php,wordpress,shortcode,Php,Wordpress,Shortcode,我知道这个问题已经被问过一百次了,但我一直在尝试一些我能找到的解决方案,但似乎都不管用 我有一个包装内容的shortcode: [important_note]Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam vel velit at ex congue aliquet.[/important_note] 我正在functions.php中使用以下短代码函数: function important_note( $atts

我知道这个问题已经被问过一百次了,但我一直在尝试一些我能找到的解决方案,但似乎都不管用

我有一个包装内容的
shortcode

[important_note]Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Nam vel velit at ex congue aliquet.[/important_note]
我正在
functions.php
中使用以下短代码函数:

function important_note( $atts, $content = null ) {
    return '<div class="imp-note">'.$content.'</div>';
}
add_shortcode("important_note", "important_note");
如图所示:和图所示:(仅将wpautop()删除为短代码中的内容

快捷码中的内容必须如下所示,而不是我上面所示的内容:

[important_note]
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nam vel velit at ex congue aliquet.
[/important_note]
内容与快捷码标记是分开的。该短代码输出以下html:

<div class="imp-note">
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
    <p>Nam vel velit at ex congue aliquet.</p>
</div>

Lorem ipsum dolor sit amet,是一位杰出的献身者

Nam vel velit在ex congue aliquet


将确认它是否适用于所有短代码…

正如我在问题中提到的更新
函数中的这段代码。php
实现了以下功能:

remove_filter( 'the_content', 'wpautop' );
add_filter( 'the_content', 'wpautop' , 99);
add_filter( 'the_content', 'shortcode_unautop',100 );
remove_filter( 'the_content', 'wpautop' );
add_filter( 'the_content', 'wpautop' , 99);
add_filter( 'the_content', 'shortcode_unautop',100 );
从这个问题的答案中可以看出:这篇文章:(向下滚动到:删除wpautop(),只删除短代码中的内容)

短代码中的内容与短代码标记分开也很重要,否则第一行将不会包装在
标记中:

[important_note]
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nam vel velit at ex congue aliquet.
[/important_note]
HTML输出:

<div class="imp-note">
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
    <p>Nam vel velit at ex congue aliquet.</p>
</div>

Lorem ipsum dolor sit amet,是一位杰出的献身者

Nam vel velit在ex congue aliquet

我在WordPress网站上检查了所有的短代码,所有的短代码都有正确的格式。希望这有助于我们了解一些情况:)

你试过这个吗

remove_filter( 'the_content', 'wpautop' );
remove_filter( 'the_excerpt', 'wpautop' );
有关更多信息:

您还可以在functions.php文件中添加此函数

add_filter('the_content', 'remove_empty_p', 20, 1);
function remove_empty_p($content){
    $content = force_balance_tags($content);
    return preg_replace('#<p>\s*+(<br\s*/*>)?\s*</p>#i', '', $content);
}
add_filter('the_content','remove_empty_p',20,1);
函数remove\u empty\p($content){
$content=强制平衡标签($content);
返回preg#u replace(“#\s*+()?\s*

#i”,“$content”); }
add_filter('the_content', 'remove_empty_p', 20, 1);
function remove_empty_p($content){
    $content = force_balance_tags($content);
    return preg_replace('#<p>\s*+(<br\s*/*>)?\s*</p>#i', '', $content);
}