使插件兼容 Plone 4 和 Plone 5

Making an addon both Plone 4 and Plone 5 compatible

我正在尝试制作一个兼容 Plone 4 和 Plone 5 的插件。我 运行 遇到的问题是 profiles/default XML.

Plone 5:我有一个 registry.xml 用于注册 CSS Plone 4:我有一个 cssregistry.xml 用于注册 CSS

我希望 Plone 4 会忽略 registry.xml 但它在 Plone 4 的安装过程中捡起它然后崩溃。有解决办法吗?

您可以有多个配置文件指向不同的配置文件目录(它们在 configure.zcml 中定义),Plone 文档 have examples of how to conditionally evaluate ZCML:

<include zcml:condition="have plone-4" package=".package" />
<include zcml:condition="not-have plone-4" package=".otherpackage" />

还有 having zcml:condition on a configure 的直 "evaluate content if condition is met"。

你所说的添加后效果很好:

xmlns:zcml="http://namespaces.zope.org/zcml"

到顶级配置。仅供未来需要此功能的人参考。