编辑首页时如何设置自定义编辑器样式?

时间:2015-09-29 作者:Marecky

我想以同样的方式获取html类名get_body_class() 工作,但在管理方面。我想更改TinyMCEs iFrame元素的主体类名,以允许指定editor-styles.css 仅当使用编辑页面时,样式才起作用.page.home 课程。

样式:

body.page.home table td:nth-child(2) {
    padding-left:30px;
}
这不起作用:
add_filter(\'tiny_mce_before_init\', function($init_array) {

    //var_dump(get_option( \'page_on_front\'));
    //var_dump(get_option(\'show_on_front\'));
    if (is_front_page()) {
        $init_array[\'body_class\'][] = \'home\';
    }
    if (is_page()) {
        $init_array[\'body_class\'][] = \'page\';
    }
    if (isset($init_array[\'body_class\']) && is_array($init_array[\'body_class\'])) {
        $init_array[\'body_class\'] = implode(\' \', $init_array[\'body_class\']);
    }
}
换句话说:如何为TinyMCE指定一个精确页面的自定义编辑器样式(在我的例子中是主页)。

1 个回复
最合适的回答,由SO网友:Nate Allen 整理而成

如果我理解正确的话,您希望在编辑主页时使用自定义编辑器样式吗?您可以通过比较帖子ID和中的ID来检查当前是否正在编辑主页page_on_front 选项,如下所示:

function homepage_editor_styles() {
    global $post_ID, $post_type;

    if ( empty ( $post_ID ) || \'page\' !== $post_type )
        return;
    if ( $post_ID === (int) get_option( \'page_on_front\' ) ) {
        add_editor_style( \'css/editor-style-homepage.css\' );
    }
}
add_action(\'admin_head\', \'homepage_editor_styles\');