Creating Navigation
(Difference between revisions)
(added "navigation in current folder" section) |
|||
Line 19: | Line 19: | ||
if(el.isInNavigation()) out.print("<a href=\"" + path + "\">" + el.getNavText() +"</a> > "); | if(el.isInNavigation()) out.print("<a href=\"" + path + "\">" + el.getNavText() +"</a> > "); | ||
} | } | ||
+ | </code> | ||
+ | |||
+ | == Navigation in current folder == | ||
+ | |||
+ | To get a list of the items that are available in the current folder, you use the getNavigationForFolder method: | ||
+ | |||
+ | <code lang="Java"> | ||
+ | <%@ page import="java.util.*, org.opencms.jsp.*" %> | ||
+ | <ul> | ||
+ | <% | ||
+ | CmsJspActionElement cms = new CmsJspActionElement(pageContext, request, response); | ||
+ | List list = cms.getNavigation().getNavigationForFolder(); | ||
+ | Iterator i = list.iterator(); | ||
+ | while (i.hasNext()) { | ||
+ | org.opencms.jsp.CmsJspNavElement ne = (org.opencms.jsp.CmsJspNavElement)i.next(); | ||
+ | out.println("<li><a href=\"" + cms.link(ne.getResourceName()) + "\">"); | ||
+ | out.println(ne.getNavText() + "</a></li>"); | ||
+ | } | ||
+ | %> | ||
+ | </ul> | ||
</code> | </code> |
Revision as of 16:37, 10 July 2008
Most people use CmsJspNavBuilder to create navigation menus on the fly.
Breadcrumbs
Breadcrumbs are a trail of links that indicate where you are in the hierarchy. They look like: Home >> About >> Staff
So you would know you were in the about section, looking at staff pictures.
You can create them using the CmsJspNavBuilder. Here is an example:
CmsJspActionElement element = new CmsJspActionElement(pageContext, request, response); List breadcrumbParts = element.getNavigation().getNavigationBreadCrumb(); Iterator i = breadcrumbParts.iterator(); String path = ""; while(i.hasNext()) { CmsJspNavElement el = (CmsJspNavElement)i.next(); path += el.getFileName(); if(el.isInNavigation()) out.print("<a href=\"" + path + "\">" + el.getNavText() +"</a> > "); }
To get a list of the items that are available in the current folder, you use the getNavigationForFolder method:
<%@ page import="java.util.*, org.opencms.jsp.*" %> <ul> <% CmsJspActionElement cms = new CmsJspActionElement(pageContext, request, response); List list = cms.getNavigation().getNavigationForFolder(); Iterator i = list.iterator(); while (i.hasNext()) { org.opencms.jsp.CmsJspNavElement ne = (org.opencms.jsp.CmsJspNavElement)i.next(); out.println("<li><a href=\"" + cms.link(ne.getResourceName()) + "\">"); out.println(ne.getNavText() + "</a></li>"); } %> </ul>