Wordpress可视化编辑器中的自定义样式不会将类应用于链接元素

时间:2017-06-29 10:32:52

标签: php wordpress styles tinymce wordpress-theming

所以我为可视化编辑器设置了一个自定义样式,如下所示:

// Registers an editor stylesheet for the theme.
function wpdocs_theme_add_editor_styles() {
    add_editor_style( 'editor-styles.css' );
}
add_action( 'admin_init', 'wpdocs_theme_add_editor_styles' );

// Callback function to insert 'styleselect' into the $buttons array
function my_mce_buttons_2( $buttons ) {
    array_unshift( $buttons, 'styleselect' );
    return $buttons;
}
// Register our callback to the appropriate filter
add_filter( 'mce_buttons_2', 'my_mce_buttons_2' );

// Callback function to filter the MCE settings
function my_mce_before_init_insert_formats( $init_array ) {
    // Define the style_formats array
    $style_formats = array(
        // Each array child is a format with it's own settings
        array(
            'title' => 'Button',
            'classes' => 'button',
            'wrapper' => true,
        ),
    );
    // Insert the array, JSON ENCODED, into 'style_formats'
    $init_array['style_formats'] = json_encode( $style_formats );

    return $init_array;

}
// Attach callback to 'tiny_mce_before_init'
add_filter( 'tiny_mce_before_init', 'my_mce_before_init_insert_formats' );

问题#1 为什么这种风格没有将“按钮”类添加到链接'a'元素?它与“inline =>'span'”参数一起工作正常,但将类直接应用于link元素更干净。我不想用span类乱丢我的代码。

问题#2 当我选择“mce_buttons_1”而不是“mce_buttons_2”时,下拉列表不会显示在第一个tinymce行中。我不能因为原生下拉而选择第一行吗?

问题#3 实际上我想将自定义样式添加到本机下拉列表中。那可能吗?我找不到任何有关如何做到这一点的资源。

谢谢! /叶普

1 个答案:

答案 0 :(得分:0)

我找到了一种方法,您应该首先将自定义样式应用于简单文本,然后添加带有链接btn的链接,然后编辑器将保留您的类。