I do this by registering a subscriber for
the handler sets the skin:
(note that my site objects have a site_skin attribute which allows me to
""" Sets the skin during traversal"""
if (IMySite.providedBy(event.object) and
skin = zope.component.getUtility(IBrowserSkinType,
if not '++skin++' in event.request.URL:
I'm pretty sure that one shouldn't have to check the type of the object
that's being traversed. I believe that you should be able to add another
interface to the 'for' attribute of the subscriber zcml - but that never
worked for me.
I'd be interested in hearing other/more efficient ways of doing this though.
Zope3-users mailing list