问题描述
|
最简单的方法是什么?我将其添加到profile / default中的portlets.xml文件中。现在,当我转到@@ manage-portlets时,可以在“添加portlet \”下拉列表中找到它。但是我需要它自动创建。
是否可以在我的概要文件/缺省值的左右列中明确指定我想要的Portlet集?
解决方法
您可以使用portlets.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>
有关Portlet分配和GenericSetup的详细信息,请参见Plone.org上GenericSetup手册的Portlet部分或原始PLIP。
这些属性与portlet dataprovider接口匹配,有关Classic Portlet的接口定义,请参见Classic Portlet源代码。
,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>
,对于没有经验的产品开发人员(甚至其他人),实现这种自动化的最简单方法是:
进行手动配置
像其他任何常见的任务
进入用户/管理员,进入
门户网站的根目录并添加
您想要的portlet。
进入zmi-> portal_setup->导出
标签
选择portlet步骤并导出
仅在tar.gz中使用portlets.xml
得到了。
该xml包含您需要的所有内容:注册和分配...实际上,甚至更多的东西,因此清除其中不需要的内容可能是一件好事。