You are here: Home Plone products Portal Taxonomy

Portal Taxonomy (0.5)

by Ihor Berehulyak last modified 2009-01-15
Released on 2008-05-09 by Jeremy Stark for Plone 2.1, Plone 2.5, Plone 3.0 under GPL - GNU General Public License available for All platforms.
Software development stage: beta
Provides a way to create a treeish category structure and then limit the association of content intances to specific sections of the tree based on the contents type and user selections. It also provides an attribute system that works similar to keywords but allows for collections of attributes to be associated with multiple content types. Includes custom archetype fields for creating Archetypes that interact with PortalTaxonomy.
Portal Taxonomy

PortalTaxonomy provides two portal tools: Category Manager and Attribute Manager. It's been useful for me to have available, I thought maybe others might find it useful as well. At least as a conversation piece regarding functionality I would like to see more central to CMF/Plone.

The main motivation was to have a centralized, recursive, categorization structure that could be associated with groups of content types. The current Plone KeyWord system allows for only a 1 to 1 mapping of keyword lists to types. KeyWords are also a flat list and I needed something that was treeish.

Category Manager and Attribute Manager were designed to describe an object in different ways. Categories tell where an object fits in within a treeish structure. Attributes describe what the object is ( a lot like keywords can currently be used, except attributes can be associated with multiple content types).

Category Manager

This tool allows site planners to create a treeish category system and then associate content types with parts of the tree. Content types that use the provided CategoryField may be associated with categories within the tree.

Attribute Manager

This tool allows site planners to create "attribute collections" and then associate those collections with types by including an AttributeField in the content types schema. Attribute field is in the fields module included with PortalTaxonomy.


Put the PortalTaxonomy folder in Zope's Products directory and restart Zope. Create a Plone site. Go to Plone Setup->Add/Remove Products. Select PortalTaxonomy from the list and click the install button.

If you want the example type TaxonomyType to be installed, uncomment the line:

#import example


Basic Usage

Both Category Manager and Attribute Manager look for Archetypes that use the CategoryField and AttributeField, respectivly, in their schemas. Archetypes that use these fields will appear in a Categories or Attribute Collections "type restrictions" selection box. If no archetypes use those fields then the type restrictions selection box will be empty. To add a sample type, uncomment the #import example line in, restart Zope and reinstall PortalTaxonomy (or install the TaxonomyType manually through the portal_types tool). This will give you a quick type to start playing with.

Category Manager

Create an Archetype that uses the PortalTaxonomy.fields.CategoryField field. Add categories and sub categories to Category Manager as needed, associating at least some of them with your new Archetype. Add a new instance of your Archetype. A category field selector should be available. Click on the categories to tree out sub categories. The category selector uses a slightly modified nested pick list designed by Christian Heilman (


Create an Archetype that uses the PortalTaxonomy.fields.AttributeField. Add attribute collections to AttributeManager and associate at least some of them with your new Archetype. Add an instance of your new archetype and check desired attributes.

Document Actions
Powered by Plone