问题描述

我总是在编辑器中以 HTML 模式找到自己,尝试获取简单的东西,如段落间的间隔,以显示正确的 (使用<p></p>) 。是正常吗有没有更好的编辑器,我可以使用?

最佳解决方案

TinyMCE 会将 HTML 源中的每一个换行符转换为<p></p>,反之亦然。保存后,您将手动输入 HTML 源代码中的任何<p/> 实际上都将被删除,因为当显示该帖子的内容时,将添加<p></p>

自动<p> 替换仅在您使用<?php the_content() ?> 呈现帖子内容时有效,如果直接输出 $post->post_content,则不会通过相同的格式化钩子,并且看起来很简单,没有换行符或段落。

如果你想要的是在渲染的标记中有很多<br/> 标签,你应该可以找到一个更好的解决方案,基于 CSS 和使用 marginpadding CSS 属性。

次佳解决方案

我同意上述的一些帖子,直接回答了这个问题 (它假设继续使用 WYSIWYG 编辑器) 。但经过试用,我至少要重新考虑,并切换到 HTML 编辑器。

假设你还在我身边 (你正在考虑它作为一个选择),还有更多。 “Ah,” 你说,“HTML 编辑器还添加了换行符,并且一般与我混淆!” 真的,这就是为什么你需要删除 auto-p 过滤器。为了很好的措施,由于我尽可能的将 HTML 转换为纯 HTML,所以我拿出了纹理化器,它处理 curl 引号。

去你的主题编辑器。转到”Theme Functions”(functions.php) 文件。添加以下内容:

remove_filter ('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');

但是,如果我打算使用 post /page 摘录,我也添加一下:

remove_filter ('the_excerpt', 'wpautop');
remove_filter('the_excerpt', 'wptexturize');

希望有帮助!坦白说,我从来没有尝试过与视觉编辑器一起禁用过滤器!也许它实际上也是在这方面的帮助!

第三种解决方案

我推荐 TinyMCE Advanced,我更喜欢更多地控制用户可以在网站上编辑的 HTML 代码。有一个选项 Stop removing the P and BR tags when saving and show them in the HTML editor 将会做的诀窍,它默认为 unticked,所以一旦安装,你需要进入设置并启用它。另一个优点是能够显示/隐藏编辑器的各个方面,以便您可以删除最终用户可能会玩的按钮,并尝试使用内容格式化为’creative’!默认情况下,很多不需要的选项都已启用,因此您需要进入并删除不需要的选项。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。