最简单的方法是什么?我将其添加到profiles/default中的portlet .xml文件中。现在,当我转到@@manage-portlets时,可以在"Add portlet"下拉菜单中找到它。但是我需要它自动创建。
是否有可能显式地指定我想在配置文件/默认值中的左右列上的portlet集?
portlet .xml文件做了一些不同的事情,注册一个可以添加的类型的portlet和实际添加portlet之间是有区别的,这两者都可以在portlet .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>
您可以使用portlet .xml文件中的assignment
元素,通过配置了模板和宏名的portlets.Classic
portlet注册您的经典portlet:
<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>
请参阅Plone.org或原始PLIP上的GenericSetup手册的Portlet部分,了解有关Portlet分配和GenericSetup的详细信息。
属性匹配portlet数据提供程序接口,请参阅Classic portlet源代码以获取Classic portlet的接口定义。
对于没有经验的产品开发人员(即使是其他人)来说,实现这种自动化的最简单方法是:
- 手动配置像任何其他公共的分配一样电话用户/管理员,进入门户的根,并添加
- go in zmi -> portal_setup -> export标签
- 选择portlet步骤并将其导出
- 在tar.gz文件中使用portlet .xml。
这个XML包含了所有你需要的:注册和分配…实际上,甚至更多的东西,所以可能是一件好事,清理掉不需要的东西