在我的Plone插件中包含CSS文件

时间:2012-09-10 14:10:06

标签: plone

我想在plone 4产品中添加一个简单的样式表。因此,我添加了

<browser:resourceDirectory
    name="groovecubes.portlet.gallery.css"
    directory="css"
    />

到[product dir] /browser/configure.zcml,我应该使用以下语法浏览此文件夹中的样式表:++ resource ++ groovecubes.portlet.gallery.css / mycss.css。但事实并非如此。在建筑物之后甚至都没有。

因此找不到[product目录] /profiles/default/cssregistry.xml中的每个声明。我错过了什么?是包名吗?

包main configure.zcml包含行

 <include package=".browser" />

应该执行browser / configure.zcml

但是不是。我粘贴了包configure.zcmlbrowser/configure.zcml

更新II:

它变得更加怪异。当我修改browser/configure.zcml的头部时,当我尝试启动实例时,文件被识别为格式错误。但是当我修改相关条目时,启动继续正常。

更新III:

我现在已经测试了各种各样的东西,但我发现,SaxParser会忽略.zcml文件中的任何格式错误的标签。在我的开发和生产实例的每个产品中(Plone 4.2 / Plone 4.1)。这可能是一个新功能,我可能错过了吗?

更新IV:

已解决:我从browser/configure.zcml删除了意外使用相同名称的接口声明。这使我的.css可用。但我仍然想知道所描述的解析器行为。

1 个答案:

答案 0 :(得分:2)

您声明了名称groovecubes.portlet.gallery.css,但尝试将其作为++resource++groovecubes.portlet.gallery访问(请注意那里缺少.css。)

使用++resource++groovecubes.portlet.gallery.css/mycss.css或从.css注册中移除resourceDirectory部分。

如果这只是一个拼写错误,请检查ZCML文件是否实际被加载;如果名称匹配,注册本身就可以。