我想删除wpautop的某些部分,但保留其余部分。我在wp中找到了包含/格式。函数wpautop中的php:
$pee = preg_replace(\'|<p>\\s*</p>|\', \'\', $pee); // under certain strange conditions it could create a P of entirely whitespace
&;
$pee = preg_replace(\'|(?<!<br />)\\s*\\n|\', "<br />\\n", $pee); // optionally make line breaks
第251行和;261在我的版本中。
我想删除函数的这些部分,删除或//行可以正常工作。
但是如何删除主题文件中的这些行,使其在更新时不会被覆盖?我能在函数中做些什么吗?
最合适的回答,由SO网友:s_ha_dum 整理而成
没有挂钩wpautop()
, 完全考虑到这可能是WordPress世界中最受抱怨的功能,奇怪的是,除了你自己,没有其他功能。
您需要做的是卸下过滤器:
remove_filter( \'the_content\', \'wpautop\' );
remove_filter( \'the_excerpt\', \'wpautop\' );
创建一个满足您需求的版本,并将该过滤器添加到相同的挂钩中:
add_filter( \'the_content\', \'my_wpautop\' );
add_filter( \'the_excerpt\', \'my_wpautop\' );