web-dev-qa-db-fra.com

Formats de style personnalisés TinyMCE désactivés

J'ai créé un style TinyMCEdropdown pour l'éditeur TinyMCE WordPress.

Les formats apparaissent comme prévu dans l'éditeur, mais lorsque la liste déroulante est étendue pour choisir un style, ils sont désactivés. Y aurait-il une raison à cela? Mon code est attaché ci-dessous.

Drop down options showing grey & disabled

function new_mce_button($buttons) {

    array_unshift($buttons, 'styleselect');
    return $buttons;

}
add_filter('mce_buttons_2', 'new_mce_button');

/**
 * Callback function to filter the MCE settings
 */
function custom_formats( $init_array ) {  

    $style_formats = array(
        array(
            'title' => 'White Button',
            'selector' => 'a',
            'classes' => 'cta wht',
        ),
        array(
            'title' => 'Grey Button',
            'selector' => 'a',
            'classes' => 'cta gry'
        ),
        array(
            'title' => 'Light Blue Button',
            'selector' => 'a',
            'classes' => 'cta lblue'
        ),
        array(
            'title' => 'Dark Blue Button',
            'selector' => 'a',
            'classes' => 'cta dblue'
        ),
    );  

    $init_array['style_formats'] = json_encode( $style_formats );  

    return $init_array;  

} 
add_filter( 'tiny_mce_before_init', 'custom_formats' );
1
estin92

Comme l'a souligné @karun, le texte devait tout d'abord être transformé en hyperlien, après quoi les formats sont devenus actifs.

Changer les valeurs du tableau en

array(
  'title' => 'Grey Button',
  'block' => 'div',
  'classes' => 'cta gry'
),

fait le style disponible en permanence.

1
estin92