In the WordPress control panel, when writing a new post, I would like to disable the Header 1 and Header 2 from the text formatting combobox, because I already use them on my theme (h1 for blog name and h2 for post titles), and would like to keep all headers inside a post with h3 or higher. Is that possible?
It doesn’t matter for the case if the code can be edited in the HTML view. Also, I don’t want to edit WordPress internal files, so a hack for functions.php or a plugin would be great for this task, in order to preserve this change across future updates.
Thank you!
2 s
you can change lots of things about the tinyMCE editor at the tiny_mce_before_init filter.
http://codex.wordpress.org/TinyMCE_Custom_Buttons
the following will restrict your blockformats to p,h3,h4 and blockquote
function wpa_45815($arr){
$arr['theme_advanced_blockformats'] = 'p,h3,h4,blockquote';
return $arr;
}
add_filter('tiny_mce_before_init', 'wpa_45815');
EDIT for WordPress 3.9 see link
function wpa_45815($arr){
$arr['block_formats'] = 'Paragraph=p;Heading 3=h3;Heading 4=h4';
return $arr;
}
add_filter('tiny_mce_before_init', 'wpa_45815');