silverstripe - 在编辑器的"样式"下拉菜单中添加样式

Phi*_*son 5 styles silverstripe

从上面的问题,我认为这将是相对容易的,但我找不到任何关于如何添加样式到'样式'下拉菜单的文档.任何人都可以把我推向正确的方向吗?

Sam*_*née 11

样式下拉列表会根据主题的typography.css文件中的类自动填充.要添加类,只需确保在那里定义它们.或者,如果要为类提供更友好的名称或从列表中删除某些类,可以通过将其放在_config.php文件中来显式定义要列出的样式.

HtmlEditorConfig::get('cms')->setOption('theme_advanced_styles', 
    'Name 1=class1;Name 2=class2');
Run Code Online (Sandbox Code Playgroud)

这是WinyIWYG编辑器组件TinyMCE提供的功能,这条线只是theme_advanced_styles在CMS使用时设置TinyMCE 的设置. TinyMCE网站上的这个帖子 也讨论了它.

另请注意Markus的回答如下:editor.css需要位于主题css文件夹中并包含typography.css.

  • 如果您将一个类添加到typography.css但它没有显示在下拉列表中,请尝试清除浏览器缓存. (2认同)

mar*_*kus 6

如果editor.css也在主题css文件夹中并且包含typography.css,则@SamMinnée的答案才有效.

以下是对这两者如何一起玩的更详细的描述.

如果在编辑器中出现新样式时遇到问题,请尝试以下操作:

  • yoursite.com/admin/?flush=1
  • 检查mythemes/css/editor.css文件的文件权限.它应该是webserver用户可读的.