2013-06-12 108 views
12

当您从一个Word文档中TinyMCE的编辑器复制并粘贴有时会出现不必要的<p>标签:删除多余的p标签在tinyMCE的

<p>&nbsp;</p> 
<div class="starpasspro-example-question"> 
    <p><strong>Example: Levels of strategy</strong></p> 
    <p>Microsoft is one of the world&rsquo;s largest organisations, providing corporate solutions to businesses throughout the world to help them realise their fullest potential. At Microsoft, there are three levels of strategy as follows:</p> 
</div> 
<p>&nbsp;</p> 

这里产生我想删除<p>标签代码任何方式来做到这一点?

+0

仍然没有为我工作。 您是否找到解决方案>? –

回答

0

是的,这是可能的。有一种安全的方法可以删除所有要移除的html元素(您可以定义要保留的内容)。它是通过使用tinymce配置参数paste_preprocess和自定义函数strip_tags。检查出来here

12

tinymce.init({ });

实例添加这些行:

tinymce.init({ 
    forced_root_block : "", 
    force_br_newlines : true, 
    force_p_newlines : false, 
}); 
+1

这对我有用。谢谢! –

3

这将是有帮助的。

添加到您的tinymce.yml文件

forced_root_block : "" 

force_br_newlines : true 

force_p_newlines : false 
0

添加到您的functions.php文件和标准的P标签 标签将通过添加一些参数到tiny_mce_before_init钩被删除。如果你想看看它是如何工作的,你可以在此页面上进一步阅读:https://codex.wordpress.org/TinyMCE

//////////////////////////////////////////////////////////////////////// 
//////////REMOVE STANDARD <P> FROM TINYMCE EDITOR///////////////////////// 
/////////////////////////////////////////////////////////////////////// 
function my_format_TinyMCE($in) { 
$in['forced_root_block'] = ""; 
$in['force_br_newlines'] = TRUE; 
$in['force_p_newlines'] = FALSE; 
return $in; 
} 
add_filter('tiny_mce_before_init', 'my_format_TinyMCE'); 
+1

请不要在多个问题上发布[相同的答案](http://stackoverflow.com/a/42157148/4174897)。发布一个很好的答案,然后投票/标记以重复关闭其他问题。如果问题不重复,*定制您的问题答案。* –