WebMake: Documentation: navtree.wmk

WebMake Documentation (version 2.3) | [ Back | Forward | Index | All In One ]

# navtree.wmk LOADING WEBMAKE TAGS DESCRIPTION ATTRIBUTES VARIABLES THANKS # LOADING
      <use plugin="navtree" />
# WEBMAKE TAGS
      <navtree name=... sitemap=...
            opennode=... closednode=...
            thisnode=... thisleaf=...
            leaf=... depth=... />
# DESCRIPTION This WebMake plugin provides the `navtree` tag. `navtree` operates similarly to the `sitetree` tag, but displays only a subset of all the site's nodes; it will map all of the top-level nodes of the site, the parent nodes of the current page, their direct children, and the current page plus it's children up to depth `depth`. The effect is similar to a tree-view-based file browser, like Windows Explorer. This differs from the `sitetree` tag in that `sitetree` does not support displaying the current page's children. So, for a site like this: + Section 1 + Section 1 Subsection 1 + Section 1 Subsection 2 + Section 2 + Section 2 Subsection 1 + Section 2 Subsection 2 A reference to the site tree on page `Section 1` would result in a site tree like this: - Main Page - Section 1 Section 1 Subsection 1 Section 1 Subsection 2 + Section 2 Display of each page's entry in the tree is performed by expanding one of the 5 template content items named in the tag's attributes: `closednode`, `opennode`, `thisnode`, `thisleaf` or `leaf`. See the `sitemap` tag documentation for more details on how to use these (note however that the is_node variable is not available for sitetrees). # ATTRIBUTES name The name of the sitetree object. To include a sitetree in a page, refer to it using this name, as a deferred reference. sitemap The name of the sitemap. The sitetree requires a sitemap, as the sitemap is responsible for mapping out the site and defining which pages and content items are included. closednode A content item which is evaluated to display a ''closed'' node, ie. a node which is not on the path to the current page. opennode A content item which is evaluated to display an ''open'' node, one which is on the path to the current page. As for the `sitemap` tag's `node` attribute, this content item must include a reference to the list variable, which will contain all the entries for the pages beneath it in the hierarchy. rootnode A content item which is evaluated to display an ''open'' root node. It defaults to `opennode` if not specified. It may be used to generate ''multirooted'' tree (a forest). In that case you should create a dummy root content (it upsets sitemap code if you dont have one single root) and create `rootnode` template to output only the list with apropriate decorations. thisnode A content item which is evaluated to display the current page if it is an inner node, that is it has children. Iff `depth` 0, `thisnode` must include a reference to the list variable. thisleaf A content item which is evaluated to display the current page if it is a leaf. leaf A content item which is evaluated to display a leaf-node page, one which has no pages beneath it in the hierarchy. depth How many levels beneath the current page should be listed. 0 means none (behavior of `sitetree` tag). The default is 1 which means to list direct children of the current node. # VARIABLES Following variables (content items) are defined for use in templates: title The `title` metadatum of the node. score The `score` metadatum of the node. name The name of the node. url The url of the node. Should be referenced using url reference (`$ (url)`). level The level of the node, that is how deep it is in the tree. Root node has level 0, it's children 1, their children 2 and so on. sublvl The level under current page. This is similar to `level`, except that current page is considered root. -1 for nodes not descendant from current page. left This is `depth` above the current node and `depth - sublvl` for the descendants of the current node. is_leaf This is 1 for leaf nodes and 0 for inner nodes (both closed and open). list This is the list of children, which should be output by open nodes. # THANKS Thanks to Jan Hudec <bulb /at/ ucw.cz>, who provided this tag.

WebMake Documentation (version 2.3) | [ Back | Forward | Index | All In One ]