[Zope] tree tag global navigation
   
    Michael Bernstein
     
    mbernstein@profitscape.net
       
    Tue, 23 Feb 1999 10:48:01 -0800
    
    
  
Fellow Zopesters,
Here is a short tutorial on using the tree tag for global navigation in
your site.
Step 1: Create an external method with the following code:
def getFoldersOnly(self):
    """Return a list of only the Folders contained in an
       object, for use by the tree tag"""
    return self.objectValues(['Folder'])
This is neccesary in order to avoid listing the product and acl_users
folder objects. Thanks to Kent Polk for the code. Modify this code if
you want to display something other than just folders, For example: 
Step 2: Create a DTML method named SideBar in your root folder with the
following code:
<!--#tree branches=getFoldersOnly-->
<A HREF="<!--#var BASE1-->/<!--#var tree-item-url-->"><!--#var id--></A>
<!--#/tree-->
Notice that we are generating absolute URL's. Thanks to Kent Polk and
Martijn Pieters for this code.
Step 3: Call SideBar with the following code from anywhere in your site
using this code:
<!--#var "SideBar(PARENTS[-1],REQUEST)"-->
And voila! it should display a tree of your entire site structure!
Thanks to Amos Latteier for this deceptively simple code snippet.
I hope this helps others who may have been struggling with this.
Michael Bernstein