【问题标题】:Restricting glossary functionality to particular parts of a site将词汇表功能限制在站点的特定部分
【发布时间】:2011-03-30 01:32:42
【问题描述】:

我们遇到Products.PloneGlossary 词汇表的使用应受内容类型(开箱即用)和路径(词汇表应仅用于 /one/part/of/my 的限制)的情况/克隆/站点)。有没有办法做到这一点?

【问题讨论】:

    标签: plone glossary


    【解决方案1】:

    这似乎是开箱即用的配置。在configlet 中确保“对所有内容使用全局词汇表?”未选中:然后将您的词汇表放在您希望它可用的路径中,并在站点根目录中放置一个空词汇表。

    【讨论】:

      【解决方案2】:

      好吧,您可以克隆内容类型,然后仅在您希望它们启用词汇表的部分中使用这些内容类型。但这很不雅,我承认。其他人可能对如何将 PloneGlossary 修改为像这样“放置”有更好的想法。

      【讨论】:

        【解决方案3】:

        如果你在 Plone 4 上,你有一个 body 类“portaltype-xxx”。也许您可以自定义一些词汇表 javascript,仅当此类附加在 BODY 元素上时才运行,几行 jQuery:

        if (jq('body').hasClass('portaltype-xxx')) { ... }

        或者您可以将 portal_javascript 工具中的词汇表 javascript 条件更改为仅在 object.portal_type=='xxx' 时出现。

        祝你好运

        【讨论】:

          【解决方案4】:

          不确定 PloneGlossary 是如何工作的,但您是否尝试使用权限来限制它?使用“共享”选项卡分配允许 PloneGlossary 在某些文件夹上的本地角色...

          【讨论】:

            【解决方案5】:

            我认为最简单的解决方案是根据自己的需要自定义注册 ploneglossary.js 文件的“条件”。我将扩展相关内容类型的架构并为其提供一个新字段“showGlossary”。条件可以检查对象的值。

            这种方法不需要对 PloneGlossary 进行任何自定义,可以直接在我的策略包中完成。

            【讨论】:

            • 我认为这似乎很合理。
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2016-08-12
            • 2012-12-29
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-03-20
            • 2017-02-11
            相关资源
            最近更新 更多