I'm posting the solution Ive found to successfully removing the p tags from the TinyMCE editor considering the grief it has given me, it might be useful to someone else.
I understand there are people who believe the p tags are necessary, but I much prefer <br /> tags and think they provide much for cleaner code.
There's also a css 'solution'.
p{
margin:0px;
padding:0px;
}
But my preferred solution below.
CustomLeftAndMainDecorator.php
<?php
class CustomLeftAndMainDecorator extends LeftAndMainDecorator{
function init(){
$htmlEditorConfig = HtmlEditorConfig::get('cms');
$htmlEditorConfig->setOption('forced_root_block','');
$htmlEditorConfig->setOption('force_br_newlines',true);
$htmlEditorConfig->setOption('force_p_newlines',false);
$htmlEditorConfig->setOption('convert_newlines_to_brs',false);
$htmlEditorConfig->setOption('invalid_elements','p');
$htmlEditorConfig->setOption('paste_auto_cleanup_on_past',true);
$htmlEditorConfig->setOption('paste_remove_styles',true);
$htmlEditorConfig->setOption('paste_remove_styles_if_webkit',true);
$htmlEditorConfig->setOption('paste_strip_class_attributes',true);
}
}
Add to mysite/_config.php
Object::add_extension("LeftAndMain", "CustomLeftAndMainDecorator");