Supprimer les portlets par défaut de Plone via un produit
Par défaut Plone installe de nombreux portlets qui ne sont pas forcément nécessaire. Cet article présente la configuration nécessaire à l'automatisation de leur suppression.
Placez-vous dans le dossier de votre produit, et créez y le fichier profiles/default/portlets.xml avec le contenu suivant :
<?xml version="1.0"?>
<portlets
xmlns:i18n="http://xml.zope.org/namespaces/i18n"
i18n:domain="plone">
<!-- Remove the portlets -->
<assignment
manager="plone.leftcolumn"
category="context"
key="/"
type="portlets.Navigation"
name="navigation"
remove="True"
/>
<assignment
manager="plone.leftcolumn"
category="context"
key="/"
type="portlets.Login"
name="login"
remove="True"
/>
<assignment
manager="plone.rightcolumn"
category="context"
key="/"
type="portlets.Review"
name="review"
remove="True"
/>
<assignment
manager="plone.rightcolumn"
category="context"
key="/"
type="portlets.News"
name="news"
remove="True"
/>
<assignment
manager="plone.rightcolumn"
category="context"
key="/"
type="portlets.Events"
name="events"
remove="True"
/>
<assignment
manager="plone.rightcolumn"
category="context"
key="/"
type="portlets.Calendar"
name="calendar"
remove="True"
/>
</portlets>
Ce fichier efface tous les portlets assignés par l'installation par défaut de Plone. La suppression est réalisée par l'attribut : remove="True". Vous pouvez l'adapter à vos besoin en supprimant de cet exemple les "assignment" des portlets que vous souhaitez conserver.
Ajout de nouveaux portlets
Voici 2 exemples d'ajout de nouveaux portlets (notez l'absence de l'attribut remove).
- Pour un ajout simple :
<assignment
manager="plone.leftcolumn"
category="context"
key="/"
type="portlets.Search"
name="search" /> - Pour un ajout avec modification des options par défaut
<assignment
manager="plone.leftcolumn"
category="context"
key="/"
type="portlets.Navigation"
name="navigation">
<property name="includeTop">True</property>
<property name="topLevel">0</property>
</assignment>