2

最简单的方法是什么?我在profiles/default 的portlets.xml 文件中添加了它。当我转到@@manage-portlets 时,它现在在“添加portlet”下拉列表中可用。但我需要它自动创建。

是否可以在我的配置文件/默认值的左右列中明确指定我想要的一组 portlet?

4

3 回答 3

4

您可以使用portlets.xml 文件中的元素通过 portlet注册您的经典 portlet portlets.Classic,并使用模板和宏名称进行配置:assignment

<assignment
    manager="plone.rightcolumn"
    category="context"
    key="/"
    type="portlets.Classic"
    name="my-classic-portlet"
    visible="1">
  <property name="template">templatename</property>
  <property name="macro">macroname-found-in-template</property>
</assignment>

有关Portlet 分配和 GenericSetup 的详细信息,请参阅Plone.org或原始 PLIP上的 GenericSetup 手册的 Portlets 部分。

这些属性与 portlet 数据提供者接口相匹配,请参阅Classic Portlet 源代码以了解 Classic Portlet 的接口定义。

于 2011-04-13T18:37:25.550 回答
4

portlets.xml 文件做了一些不同的事情,注册一种可以添加的portlet 和实际添加一个portlet 是有区别的,两者都可以在portlets.xml 中完成。您需要使用“assignment”元素来添加 portlet:

<assignment
   manager="plone.rightcolumn"
   category="context"
   key="/plone"
   type="plone.portlet.static.Static"
   name="foo-portlet">
  <property name="header">Foo Portlet Title</property>
  <property name="text">Foo portlet contents...</property>
</assignment>
于 2011-04-13T17:38:44.467 回答
2

对于没有经验的产品开发人员(甚至其他人)来说,实现这种自动化的最简单方法是:

  1. 像任何其他普通 plone 用户/管理员一样进行手动配置或分配,进入门户的根目录并添加所需的 portlet。
  2. 进入 zmi -> portal_setup -> 导出选项卡
  3. 选择 portlet 步骤并将其导出
  4. 在刚刚得到的 tar.gz 中使用 portlets.xml。

此 xml 包含您需要的所有内容:注册和分配...实际上,甚至还有更多内容,因此清理其中不需要的内容可能是一件好事。

于 2011-04-13T20:23:29.850 回答