Antes de WP 3.9 tenía los siguientes dos filtros aplicados en functions.php:
function my_mce_buttons_2( $buttons ) {
array_unshift( $buttons, 'styleselect' );
return $buttons;
}
add_filter('mce_buttons_2', 'my_mce_buttons_2');
function mce_mod( $init ) {
$init['theme_advanced_blockformats'] = 'p,h3,h4';
$init['theme_advanced_styles'] = "Header gross=mus-bi news-single-bighead; Header klein=mus-bi news-single-smallhead; Link=news-single-link; List Items=news-single-list";
return $init;
}
add_filter('tiny_mce_before_init', 'mce_mod');
para que la lista desplegable de formatos de párrafo solo muestre p, h3 y h4, mientras que la lista desplegable de estilos personalizados muestre "Header gross", "Header klein" y así sucesivamente. Pero, desafortunadamente, wp y tinymce ya no se preocupan ya que wp 3.9, solo veo el menú desplegable de formatos de párrafos estándar ahora
asícomoeldesplegabledeformatodeestilosestándar:
Hasta ahora no he encontrado ningún documento acerca de si algún enganche ha cambiado con la actualización a Tinymce 4. ¿Alguien sabe? Saludos cordiales Ralf
Actualizar: Ok, basándome en un poco más de investigación y en los comentarios a continuación, supongo que he descubierto algunas cosas:
//Creating the style selector stayed the same
function my_mce_buttons( $buttons ) {
array_unshift( $buttons, 'styleselect' );
return $buttons;
}
add_filter('mce_buttons', 'my_mce_buttons');
function mce_mod( $init ) {
//theme_advanced_blockformats seems deprecated - instead the hook from Helgas post did the trick
$init['block_formats'] = "Paragraph=p; Heading 3=h3; Heading 4=h4";
//$init['style_formats'] doesn't work - instead you have to use tinymce style selectors
$style_formats = array(
array(
'title' => 'Header 3',
'classes' => 'mus-bi news-single-bighead'
),
array(
'title' => 'Header 4',
'classes' => 'mus-bi news-single-smallhead'
),
array(
'title' => 'Link',
'block' => 'a',
'classes' => 'news-single-link',
'wrapper' => true
)
);
$init['style_formats'] = json_encode( $style_formats );
return $init;
}
add_filter('tiny_mce_before_init', 'mce_mod');