【问题标题】:Can you enable HTML5 elements in SilverStripe CMS您可以在 SilverStripe CMS 中启用 HTML5 元素吗
【发布时间】:2015-06-30 19:33:32
【问题描述】:

我有一个在 CMS 中管理的简单 SilverStripe (v3.1) 页面。

我的目标是使用 html 功能将一些 HTML 转储到内容字段中,并让页面根据需要呈现内容。

问题是 HTMLEditorField 似乎去除了我正在转换的网站所需的所有 HTML5 标签,例如 <nav>

我在这里读到了这个问题:http://www.silverstripe.org/community/forums/customising-the-cms/show/69101

并尝试了每个解决方案并刷新缓存但没有结果。这并不奇怪,因为线程中的大多数人都有相同的结果。

我也试过这个模块:https://github.com/silverstripe/silverstripe-html5

结果相同。没有变化。

是否可以通过配置选项轻松启用 HTML5 标签,而无需修改框架或 CMS 代码?如果有,网上有这样的例子吗?

感谢所有资源、cmets、链接和解决方案。

干杯。

【问题讨论】:

    标签: html tinymce silverstripe


    【解决方案1】:

    在 SilverStripe 3.1 中,在 mysite/_config.php 中调用 setOption('extended_valid_elements', ...) 对我有用:

    HtmlEditorConfig::get('cms')->setOption(
        'extended_valid_elements',
        'img[class|src|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name|usemap|data*],'
            . 'iframe[src|name|width|height|align|frameborder|marginwidth|marginheight|scrolling],'
            . 'object[width|height|data|type],'
            . 'embed[src|type|pluginspage|width|height|autoplay],'
            . 'param[name|value],'
            . 'map[class|name|id],'
            . 'area[shape|coords|href|target|alt],'
            . 'ol[start|type]'
            . 'address[class|name|id],'
            . 'article[class|name|id],'
            . 'aside[class|name|id],'
            . 'audio[class|name|id],'
            . 'bdi[class|name|id],'
            . 'caption[class|name|id],'
            . 'canvas[class|name|id],'
            . 'datalist[class|name|id],'
            . 'details[class|name|id],'
            . 'dialog[class|name|id],'
            . 'embed[class|name|id],'
            . 'figure[class|name|id],'
            . 'figcaption[class|name|id],'
            . 'footer[class|name|id],'
            . 'header[class|name|id],'
            . 'keygen[class|name|id],'
            . 'mark[class|name|id],'
            . 'menuitem[class|name|id],'
            . 'meter[class|name|id],'
            . 'nav[class|name|id],'
            . 'output[class|name|id],'
            . 'progress[class|name|id],'
            . 'rp[class|name|id],'
            . 'rt[class|name|id],'
            . 'ruby[class|name|id],'
            . 'section[class|name|id],'
            . 'source[class|name|id],'
            . 'summary[class|name|id],'
            . 'time[class|name|id],'
            . 'track[class|name|id],'
            . 'video[class|name|id],'
            . 'wbr[class|name|id]'
    );
    

    【讨论】:

    • 我试过这个,我也试过替换valid_elements,但它对我不起作用。你使用的是版本(3.1)
    • 是的,我使用的是 SilverStripe 3.1。尝试将上面的代码粘贴到您的配置中。我注意到论坛中的代码与框架中的代码使用的代码之间存在细微差别。主要是框架中的代码在标签之间没有任何空白。复制框架方式对我有用。
    • Sweet 这行得通。由于某种原因,帖子中发布的类似内容不起作用。
    猜你喜欢
    • 2011-10-22
    • 2023-03-08
    • 2011-09-17
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    相关资源
    最近更新 更多