我们有一个样板模块,我们将其包含在您的所有SilverStripe构建中。我们正在尝试为我们的自定义WYSIWYG配置添加新类。
奇怪的是,我们有一个专门用于此的模块,但只要我们将此配置移出该模块并进入新模块,配置只反映了几个变化,而不是全部。
示例:
wysiwygboilerplate / _config.php
公司名称-样板/ _config.php
第一个示例显示了正确的所见即所得配置。当相同的代码移动到新位置'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仍然没有任何乐趣,因此排除了缓存
答案 0 :(得分:2)
由于模块配置按字母顺序包含,您必须重命名样板模块(或composer.json中的安装目录)framework
之后或者手动将配置放在mysite
内,最后添加mysite
,您可以覆盖设置。