问题
I'm trying to change the global ordering of the portlets in my Plone site. I've searched the Plone source code but I can't find the code that actually iterates through and renders the portlets, for example the 'plone.rightcolumn' and 'plone.leftcolumn' content providers. Where is that code?
回答1:
First check http://developer.plone.org/reference_manuals/old/portlets/rendered.html for technical details (imho this is still up-to-date)
The PortletRetriever (plone.portlets) collects and orders all portlet assignments.
The PortletManagerRenderer uses the informations of the retriever to render the column
Also have a look at the code of Solgema.PortletsManager they improved the PortletRetriever, this is exactly what you want to do.
来源:https://stackoverflow.com/questions/20550643/how-are-portlets-rendered-ordered-layed-out-in-plone