如何防止 WordPress 删除我的 <p> 和 标签?

How can I keep WordPress from stripping out my <p> and <br> tags?

WordPress 在可视化编辑器和文本编辑器之间切换时会去掉 <pa> 标签。嗯,具体来说,它实际上并没有将它们从内容中剥离出来,但它不会在文本编辑器视图中显示它们。有没有办法阻止它隐藏这些标签?

我知道 tinymce 高级插件,但是有没有办法在每个帖子/每个页面的基础上停止这种行为而无需安装插件?


如果给 <pa> 标签添加一个无意义的数据属性,它们会继续显示。

例子

当从文本切换到可视化编辑器并返回时,以下文本

1
<p>Some paragraph text  and a second line.</p>

变成

1
2
Some paragraph text
and a second line.

然而,

1
<p data-x>Some paragraph text <br data-x> and a second line.</p>

使标签保持可见:

1
<p data-x="">Some paragraph text <br data-x="" /> and a second line.</p>

这对于具有更复杂布局的页面很有用,这些页面可以在标签被剥离时移动。


如果帖子是自定义帖子类型,您可以使用 add_meta_box 添加元框,然后您可以使用可自定义的 wp_editor 初始化您自己的编辑器。例如,您可以将设置传递给像 force_p_newslines 这样的 tinymce,它应该强制每个新行以新段落开头