停止Umbraco 7.2.8 tinyMCE编辑器删除脚本标签

时间:2016-01-28 18:11:40

标签: tinymce umbraco script-tag

我一直试图阻止最新版本的Umbraco的tinyMCE编辑器自动剥离任何脚本标签。这几个月前工作正常。据我所知,Umbraco尚未更新。

我尝试了很多解决方案,大部分都是在这个帖子中总结出来的:https://our.umbraco.org/forum/using/ui-questions/48866-RTE-not-updating-to-show-new-HTML-tags-in-Umbraco-7

我已经编辑了umbracoSettings.config

<content>
    <TidyEditorContent>False</TidyEditorContent>
    <errors>...

并允许所有在tinyMceConfig.config中的validElements

<validElements><![CDATA[*[*]]]></validElements>

最后我更改了wed.config以强制Umbraco重新加载。

我仍然无法保存脚本标签?

任何建议表示赞赏。

2 个答案:

答案 0 :(得分:2)

首先,这是一个非常糟糕的想法(tm) - 不要这样做 - 你会打开它来解决各种各样的问题。

更好的方法是开发一个宏,它将一个文本块作为参数,并使该宏在Richtext Edit控件中可用。

然后,您的宏脚本可以以任何方式呈现输入,包括使用脚本标记(可能应该是宏脚本的一部分)。这样您就可以完全控制所呈现的内容。

答案 1 :(得分:0)

我知道这很旧,但是可以在所有7+版本上使用

要启用将javascript添加到编辑器中,您需要更改以下内容。

您需要替换config> tinyMceConfig.config文件中的某些配置

<![CDATA[+a[id|style|rel|data-id|data-udi|rev|charset|hreflang|dir|lang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick|
ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],-strong/-b[class|style],-em/-i[class|style],
-strike[class|style],-u[class|style],#p[id|style|dir|class|align],-ol[class|reversed|start|style|type],-ul[class|style],-li[class|style],br[class],
img[id|dir|lang|longdesc|usemap|style|class|src|onmouseover|onmouseout|border|alt=|title|hspace|vspace|width|height|align|umbracoorgwidth|umbracoorgheight|onresize|onresizestart|onresizeend|rel|data-id],
-sub[style|class],-sup[style|class],-blockquote[dir|style|class],-table[border=0|cellspacing|cellpadding|width|height|class|align|summary|style|dir|id|lang|bgcolor|background|bordercolor],
-tr[id|lang|dir|class|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor],tbody[id|class],
thead[id|class],tfoot[id|class],#td[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor|scope],
-th[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|scope],caption[id|lang|dir|class|style],-div[id|dir|class|align|style],
-span[class|align|style],-pre[class|align|style],address[class|align|style],-h1[id|dir|class|align|style],-h2[id|dir|class|align|style],
-h3[id|dir|class|align|style],-h4[id|dir|class|align|style],-h5[id|dir|class|align|style],-h6[id|style|dir|class|align|style],hr[class|style],small[class|style],
dd[id|class|title|style|dir|lang],dl[id|class|title|style|dir|lang],dt[id|class|title|style|dir|lang],object[class|id|width|height|codebase|*],
param[name|value|_value|class],embed[type|width|height|src|class|*],map[name|class],area[shape|coords|href|alt|target|class],bdo[class],button[class],iframe[*],script[language|type|src]]]>
  </validElements>
  <invalidElements>font</invalidElements>
  <!-- this area is for custom config settings that should be added during TinyMCE initialization -->
  <customConfig>
    <!--    <config key="myKey">mySetting</config>-->
    <config key="entity_encoding">raw</config>
    <config key="codemirror">
      {
      "indentOnInit": false,
      "path": "../../../../lib/codemirror",
      "config": {
      },
      "jsFiles": [
      ],
      "cssFiles": [
      ]
      }
    </config>
<config key="allow_script_urls">true</config>