WordPress tinymce打印空的P标记并中断html格式

时间:2015-05-28 作者:FR STAR

我提出这个问题是因为我没有找到最新的答案,而且这个问题对我来说仍然存在。

我正在运行wordpress 4.2.2x theme 当我通过WP默认编辑器(tinymce)编辑内容时。我对HTML格式有很多问题。例如,如果我在前端以视觉/文本模式编辑内容,我会变空<p></p> 有时我会注意到,如果我添加这样的内容:

<ul>
   <li><a href="#">Content1</a></li>
   <li><a href="#">Content2</a></li>
   <li><a href="#">Content3</a></li>
</ul>
它将转化为:(这种情况偶尔会发生)

<ul>
       <li><a href="#"></a>Content1</li>
       <li><a href="#"></a>Content2</li>
       <li><a href="#"></a>Content3</li>
    </ul>
我的问题是:

有什么解决办法吗

3 个回复
最合适的回答,由SO网友:Mathew Tinsley 整理而成

您可以在中完全禁用可视化编辑器profile settings. 如果需要按每页禁用它,请查看this answer.

使用文本模式可能无法解决空段落问题wpautop 过滤器将应用于内容,无论内容如何编辑。您可以删除过滤器,但随后必须手动打断内容并对其进行分段。

remove_filter( \'the_content\', \'wpautop\' );
remove_filter( \'the_excerpt\', \'wpautop\' );
或者,您可以使用过滤器在显示内容时删除任何空段落:

https://gist.github.com/ninnypants/1668216

关于主播的问题,我还没有和编辑谈过这个问题。一般来说,如果我在一篇文章中写了很多HTML,我喜欢使用“原始HTML”插件。例如:https://wordpress.org/plugins/preserved-html-editor-markup-plus/

SO网友:gdarko

它被称为wpautop。有一个插件可以帮助您有效地处理此问题

请检查PS Disable Auto Formatting

希望有帮助

SO网友:sohan

如果您查看任何特定的帖子类型,可以使用此选项

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

//decide when you want to apply the auto paragraph

add_filter(\'the_content\',\'my_custom_formatting\');

function my_custom_formatting($content){
if(get_post_type()==\'my_custom_post\') //if it does not work, you may want to pass the current post object to get_post_type
    return $content;//no autop
else
 return wpautop($content);
}
请在此处查找remove_filter( 'the_content', 'wpautop' ); only for certain post types

结束