它不起作用,因为:
也许你的过滤器运行到了贝诺蒂在评论中说的最早,你的过滤器回调可能会在添加空段落之前运行。
也许你正在处理的不是我的空<p></p>
, 认为<br>
,
...
解决方案1:禁用autop
(取下过滤器)。
解决方案2:
add_filter(\'the_content\', \'wpse_244389\');
function wpse_244389($content) {
$pattern = \'#<p>(\\s| |</?\\s?br\\s?/?>)*</?p>#\';
$content = preg_replace( $pattern, \'\', $content );
return $content;
}
参见
https://stackoverflow.com/a/14261024/358906