【问题标题】:How to get Plone's CSS Registry to load new CSS files如何让 Plone 的 CSS Registry 加载新的 CSS 文件
【发布时间】:2016-05-12 16:32:12
【问题描述】:

我正在尝试将 Plone 3.3.5 服务器升级到 4.3.6。但是,当我更新站点时,我发现站点的 CSS 没有被继承。如果我去我的 CSS Registry,我发现我几乎所有的 CSS 都产生了 (resource not found or not accessible) 错误。

我的困惑似乎在于 Plone 通常如何定位和链接/导入样式表,因为 Plone 似乎几乎没有加载我的任何 CSS,并且几乎在浏览器中给了我原始的 HTML。我假设 CSS 注册表正在从 buildout-cache 加载 CSS。有了这个假设,我定位的示例样式表位于:

Plone/buildout-cache/eggs/Products.NuPlone-1.0b3-py2.7.egg/Products/NuPlone/skins/nuplone_styles/base.css

当 CSS 注册表加载失败时,我注意到一些 CSS 正在通过这样的句柄加载:

++resource++tinymce.stylesheets/tinymce.css

但是这种格式不适用于base.css 和其他格式。

所以我的问题是,鉴于我安装了一个包含一些 CSS 的新产品,我如何让 Plone 以上述 CSS 为目标?

【问题讨论】:

    标签: plone


    【解决方案1】:

    对于“skins”FS 文件夹内的资源,在portal_css 工具上注册的方法是简单地提供文件名,所以只需放在那里base.css

    如果这不起作用,则可能是 nuplone_styles 皮肤文件夹未在 portal_skins 工具中正确注册。

    所以转到 ZMI --> portal_skins --> 点击“属性”并检查以下内容:

    • 使用什么主题?您可能必须切换回 NuPlone(但我不确定它是否适用于 Plone 4)
    • nuplone_styles 文件夹在所用主题的 CMF 层列表中吗?

    另请注意,将nuplone_styles 层添加到另一个主题不是一个好主意。请考虑在custom 目录中复制您需要的CSS。

    【讨论】:

    • 最好的。 :) 谢谢!
    【解决方案2】:

    这不是一个答案,而是一些额外的解释,不适合评论:

    通过皮肤文件夹包含样式表的“旧”方式,只需要指定文件名,而不是完整路径,并且将通过遍历找到,这意味着找到的第一个具有相应名称的文件将被采取。如果有多个同名文件,皮肤的顺序很重要。

    另一种方法是通过浏览器包注册样式表,要获得某个文件的明确路径,它们必须以+++resource++开头。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-12
      • 1970-01-01
      • 2019-03-16
      • 1970-01-01
      • 2021-03-02
      • 2016-07-26
      • 2018-05-27
      相关资源
      最近更新 更多