我希望能够让管理员更改当前只为他们使用的主题。可能通过设置 cookie 或特殊 url。这将使他们能够调试他们的主题的副本,同时另一个版本可供其他人使用。
问问题
340 次
3 回答
3
支持这一点需要在 plone.app.theming 上工作,以便可以为不同的 CMF 皮肤配置不同的重氮主题。它在我的路线图上,但我不知道什么时候能实现。如果您有兴趣开发此功能或赞助它,请与我联系。
于 2012-02-10T12:45:12.833 回答
1
我做了类似的事情,使用主机名来决定使用哪个重氮主题。使用不同的 rules.xml、index.html 和自定义资源没有问题。主题插件是另一个故事(覆盖、视图、浏览器层等),我不知道在每个请求上注册/取消注册主题插件有多好。
我回家后会更新这条评论,这样你就可以看到我做了什么。如果我没记错的话,我继承并替换了从 plone.app.theming (应用主题的组件)注册的东西。
于 2012-02-17T13:47:46.347 回答
0
我没有尝试过,但它可能会这样工作:
为当前使用的主题定义一个参数。请注意,您需要在 portal_skins/manage_propertiesForm 中启用“允许选择任意皮肤”
[theme:parameters]
theme = python:self.context.REQUEST.get('plone_skin', 'Plone Default')
并根据您的 rules.xml 中的此参数选择主题或规则集
<theme href="theme1.html" if="$them = 'special theme'"/>
<theme href="default.html" if="$them = 'Plone Default'"/>
于 2012-02-13T09:00:22.773 回答