Thanks Troy! -----Original Message----- From: Troy Farrell [mailto:troy@entheossoft.com] Sent: Thursday, 18 March 2004 4:15 PM To: Michael Fox Cc: zope@zope.org Subject: Re: [Zope] Simple Breadcrumbs in ZPT Zopelabs.com is normally the place to look for code snippets. I put these in my site root and use them for almost every site I host. The page template I call 'you_are_here' and the python script 'breadcrumbs'. I probably stole these from something. Mebbe from early CMF (?) Page Template: <div class="breadcrumbs" style="text-align:left;"> you are here: <span tal:repeat="crumb here/breadcrumbs"> <a tal:attributes="href string:${crumb/absolute_url}/; title crumb/title;" tal:content="crumb/title_or_id">home</a> <span tal:condition="not:repeat/crumb/end"> <strong>»</strong>  ;</span> </span> </div> Python Script: ## Script (Python) "breadcrumbs" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters= ##title= ## root = ('',) breadcrumbs = [] request = context.REQUEST vRoot = request.has_key('VirtualRootPhysicalPath') # Subtle bug fixed below. # PARENTS is a list. We must work on a copy because # we call reverse() on it. Previously, we were reversing # the PARENTS list, making us unable to call this script # twice for a given HTTP REQUEST PARENTS = context.REQUEST.PARENTS[:] foldertypes = ('Folder','Photo Folder') PARENTS.reverse() if vRoot: root = request.VirtualRootPhysicalPath #inside if block PARENTS = PARENTS[len(root)-1:] #inside if block for crumb in PARENTS: if crumb.meta_type in foldertypes: breadcrumbs.append(crumb) #inside for block else: return breadcrumbs #inside for block return breadcrumbs ##### END Python Script ##### Troy -- And the glory of the LORD shall be revealed, and all flesh shall see it together: for the mouth of the LORD hath spoken it. Isaiah 40.5 Michael Fox wrote:
Hi *,
Can someone please point me in the right direction here.
I'm looking for a simple python/zpt snippet to do breadcrumbs in my master page template.