SilverStripe Tinymce配置未在模块内部更新

时间:2014-11-10 04:10:49

标签: php tinymce silverstripe

我们有一个样板模块,我们将其包含在您的所有SilverStripe构建中。我们正在尝试为我们的自定义WYSIWYG配置添加新类。

奇怪的是,我们有一个专门用于此的模块,但只要我们将此配置移出该模块并进入新模块,配置只反映了几个变化,而不是全部。

示例:

wysiwygboilerplate / _config.php

enter image description here

公司名称-样板/ _config.php enter image description here

第一个示例显示了正确的所见即所得配置。当相同的代码移动到新位置'companyname-boilerplate /'目录时,它将停止运行。

这是我正在处理的代码片段。 (唯一的更新是内容css的路径)

//-------------------------------------------- WYSIWYG config

$defaultEditorConfig = HtmlEditorConfig::get('cms');
$defaultEditorConfig->setOptions(
    array(
        'theme'                         => 'advanced',
        'priority'                      => 1,
        'browser_spellcheck'            => true,
        'body_class'                    => 'wysiwyg',
        'content_css'                   => '/companyname-boilerplate/styles/wysiwyg.css',
        'schema'                        => 'html5',
        'extended_valid_elements'       => 'figure,figcaption',
        'end_container_on_empty_block'  => true,
        'style_formats'                 => array(
            array(
                'title'     => 'H1',
                'block'     => 'h1'
            ),
            array(
                'title'     => 'H2',
                'block'     => 'h2'
            ),
            array(
                'title'     => 'H3',
                'block'     => 'h3'
            ),
            array(
                'title'     => 'H4',
                'block'     => 'h4'
            ),
            array(
                'title'     => 'H5',
                'block'     => 'h5'
            ),
            array(
                'title'     => 'Paragraph',
                'block'     => 'p'
            ),
            array(
                'title'     => 'Blockquote',
                'block'     => 'blockquote',
                'wrapper'   => true
            ),
            array(
                'title'     => 'Figure',
                'block'     => 'figure',
                'wrapper'   => true
            ),
            array(
                'title'     => 'Figure caption',
                'block'     => 'figcaption',
                'wrapper'   => true
            )
        )
    )
);

$defaultEditorConfig->disablePlugins('contextmenu');
$defaultEditorConfig->enablePlugins('lists', 'paste');
$defaultEditorConfig->setButtonsForLine(1, 'styleselect, formatselect, separator, bold, italic, separator, justifyleft, justifycenter, justifyright, separator, bullist, numlist, separator, charmap, ssmedia, separator, sslink, unlink, separator, code');
$defaultEditorConfig->setButtonsForLine(2);
$defaultEditorConfig->setButtonsForLine(3);

我最初的想法是,这与SilverStripe加载配置文件的顺序有关,但是没有其他文件/模块定义我知道的HtmlEditorConfig。

我的另一个想法是围绕缓存,我清除了SilverStripe缓存,我的浏览器缓存甚至运行了dev / build仍然没有任何乐趣,因此排除了缓存

1 个答案:

答案 0 :(得分:2)

由于模块配置按字母顺序包含,您必须重命名样板模块(或composer.json中的安装目录)framework之后或者手动将配置放在mysite内,最后添加mysite,您可以覆盖设置。