Creating Navigation

(Difference between revisions)
Jump to: navigation, search
(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 17: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> > ");
 }

Navigation in current folder

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>
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox