Question: How do I list sub nodes from a container node for building a menu for instance?
Answer: The following script (serverside Javascript in the SiteVision Script portlet) demonstrates the solution
// Get utilities in the SiteVision Public API
var utils = request.getAttribute("sitevision.utils");
var resourceLocatorUtil = utils.getResourceLocatorUtil();
var nodeIteratorUtil = utils.getNodeIteratorUtil();
var linkRenderer = utils.getLinkRenderer();
// Get a container node
var sitePage = resourceLocatorUtil.getSitePage();
// Get subnodes
var menuItemsIterator = nodeIteratorUtil.getMenuItems(sitePage);
// List subnodes and render them as a link
out.println("<ul>");
while (menuItemsIterator.hasNext())
{
var menuItem = menuItemsIterator.nextNode();
linkRenderer.update(menuItem);
out.println("<li>" + linkRenderer.render() + "</li>")
}
out.println("</ul>");
Last updated: