6

我正在尝试将 h4 标签添加到refinerycms wysiwyg 编辑器。我该怎么做呢?没有找到任何关于此的文档。

我假设我必须对这个配置变量做些什么:

config.wymeditor_whitelist_tags = {}
4

1 回答 1

20

以下说明适用于 Refinery CMS 的 2.xx 和 3.xx 版本。

但是,在版本 3.xx 中,您将需要使用 custom_visual_editor_boot_options 而不是 custom_wymeditor_boot_options。

使用此文件:https ://github.com/refinery/refinerycms/blob/master/core/app/assets/javascripts/admin.js您可以在 Refinery 中为 WYMeditor 指定自定义选项。

首先,您需要覆盖文件:

bundle exec rake refinery:override javascript=admin

现在,打开 app/assets/javascripts/admin.js 并将其编辑为如下所示:

// Use this to customize the wymeditor boot process
// Just mirror the options specified in boot_wym.js with the new options here.
// This will completely override anything specified in boot_wym.js for that key.
// e.g. skin: 'something_else'
if (typeof(custom_wymeditor_boot_options) == "undefined") { 
  custom_wymeditor_boot_options = {
    containersItems: [
      {'name': 'h1', 'title':'Heading_1', 'css':'wym_containers_h1'}
      , {'name': 'h2', 'title':'Heading_2', 'css':'wym_containers_h2'}
      , {'name': 'h3', 'title':'Heading_3', 'css':'wym_containers_h3'}
      , {'name': 'h4', 'title':'Heading_4', 'css':'wym_containers_h4'}
      , {'name': 'p', 'title':'Paragraph', 'css':'wym_containers_p'}
    ]
  }; 
}

请注意,您所做的是覆盖 boot_wym.js.erb,它仅将 h1、h2、h3 和 p 指定为容器标签。请参阅:https ://github.com/refinery/refinerycms/blob/2-0-stable/core/app/assets/javascripts/refinery/boot_wym.js.erb#L49-L54

您在 custom_wymeditor_boot_options 中指定的任何选项都会覆盖 boot_wym.js.erb 中 wymeditor_boot_options 中的任何内容,因此请确保它是有效的 Javascript,否则编辑器根本不会加载。

希望有帮助;如果您需要任何澄清,请告诉我。

菲尔

于 2012-06-04T00:12:05.550 回答