防止 WordPress 移除 br 和 p 标签。

4

有没有一种方法可以防止WP从帖子或页面中删除br和p标签?

到目前为止,我已经在我的functions.php文件中添加了remove_filter('the_content','wpautop'),这完全禁用了格式化。

但是当我编辑帖子或页面,并在HTML编辑器中添加br或p标签,然后切换回可视化模式时,我添加的br/p标签被删除了。

有没有一种方法可以防止这种情况发生?

2个回答

16

这并不是真正的解决方案,而是一个变通方法:将你的<p>标签写成这样:

<p dir="ltr">something</p>

这样可以在编辑器之间切换时保留它们。您可以将其应用于任何文本标签。在此处,您可以阅读有关dir属性的信息:http://www.w3.org/TR/html401/struct/dirlang.html

我注意到,如果您尝试对<br>标记执行相同操作,则切换编辑器时,WP会用&nbsp;替换<br>。为了防止这种情况发生,可以将br标记编写为:

<br class="blank" />

我也在寻找这个问题的最终解决方案,但似乎还没有找到,即使是使用新版本的Wordpress 3.6。如果有人知道更好的解决方案,请告诉我,我会非常高兴!


2
我只想指出,这是WordPress的一个绝对可怕的开箱即用设置。视觉HTML编辑器永远不应该截断HTML,除非有一个非常好的理由去这样做,而这里没有。这强化了我作为开发人员的想法,除非你绝对必须使用WordPress,否则你永远不应该使用它。 - steveinatorx
谢谢你的支持。 - Ted Mosby

1

在您的functions.php中尝试以下代码:

function stop_removing_tags(){
    remove_filter('the_content', 'wpautop');
}


add_action('init', 'stop_removing_tags');

代码未经测试...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接