You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@forrest.apache.org by "Robert P. J. Day" <rp...@mindspring.com> on 2003/07/07 14:29:44 UTC
tabs, and site.xml versus book.xml
prelim: as i understand it (and as it appears to work), if i define
a top-level site.xml file, that site file will define the navigation
menu for all selections i make, even if some of those selections
take me into subdirectories.
if i want to override the top-level site.xml file, i can add
specifically a book.xml file to whichever directory i want, and
that book.xml file will be used to define the menu for just that
sub-directory. can only a book.xml file be used for this? is
it possible to use lower-level site.xml files for this as well,
for the sake of consistency?
and, taking this a bit further, if i want to define multiple tabs
for my site, normally, each tab would have an independent navigation
menu. i know i can implement this by having a top-level site.xml
file for the first tab (say, "Home"), have subdirectories for each
of the remaining tabs, and use a book.xml file to define each of
*those* menus.
is that the recommended way to do it?
rday
Re: tabs, and site.xml versus book.xml
Posted by Antonio Gallardo <ag...@agsoftware.dnsalias.com>.
Jeff Turner dijo:
> - (advanced) The '' tab is special, and matches all nodes. The root
> <site> node contains no tab attribute. It therefore defaults to
> '', and so the front page contains links to all pages. Usually,
> you'd use <site tab="home">, and call the home tab 'home', in
> which case only a subset of the site's content would appear on the
> home tab.
Hi:
I already done <site tab="home"> with no results:
<site label="SIG" href="" xmlns="http://apache.org/forrest/linkmap/1.0"
tab="home">
I always get all the site menu in the home tab.
I also uncommented project.menu-scheme=tab_attributes in
forrest.properties file.
I am using project.skin=krysalis-site
What I am doing wrong?
Best Regards,
Antonio Gallardo
Re: tabs, and site.xml versus book.xml
Posted by Jeff Turner <je...@apache.org>.
On Mon, Jul 07, 2003 at 08:29:44AM -0400, Robert P. J. Day wrote:
>
> prelim: as i understand it (and as it appears to work), if i define
> a top-level site.xml file, that site file will define the navigation
> menu for all selections i make, even if some of those selections
> take me into subdirectories.
Yes.
> if i want to override the top-level site.xml file, i can add
> specifically a book.xml file to whichever directory i want, and
> that book.xml file will be used to define the menu for just that
> sub-directory. can only a book.xml file be used for this? is
> it possible to use lower-level site.xml files for this as well,
> for the sake of consistency?
Only book.xml can be used, currently. It's more to keep
backwards-compatibility than intended to be a new feature.
Allowing site.xml's in subdirectories would be a nice addition, and
probably not too hard to code up, if you'd like to try it. The relevant
file is menu.xmap.
> and, taking this a bit further, if i want to define multiple tabs
> for my site, normally, each tab would have an independent navigation
> menu. i know i can implement this by having a top-level site.xml
> file for the first tab (say, "Home"), have subdirectories for each
> of the remaining tabs, and use a book.xml file to define each of
> *those* menus.
Oh.. okay, I think there might be a simpler solution. There is a shiny
new tab system in CVS Forrest, much more flexible than the old
directory-based one, but it isn't yet documented.
Which tab system is in use is determined by the 'project.menu-scheme'
property in forrest.properties. It has two possible values,
'tab_attributes' (the new system) and 'directories' (the
old system). In anticipation of a 0.5 release, 'tab_attributes' is the
default.
The new system works by allowing you to specify exactly which pages in
site.xml belong to which tab, by giving each site.xml entry a 'tab'
attribute. The new tab system requires two changes:
- In tabs.xml, each <tab> entry now requires an 'id' attribute. An
example from JIRA (result online at
http://www.atlassian.com/software/jira/docs/latest):
<tab id="" label="JIRA" dir=""/>
<tab id="install" label="Install" href="install.html"/>
<tab id="config" label="Configure" href="configure.html"/>
<tab id="user" label="Use" href="issues.html"/>
<tab id="faq" label="FAQ" href="faq.html"/>
- In site.xml, nodes that belong in a tab must be marked (or have a parent
marked) as such with a tab='<tabid>' attribute. For instance:
<site label="JIRA" href="" xmlns="http://apache.org/forrest/linkmap/1.0">
<about label="About">
<index label="Index" href="index.html"/>
</about>
<install label="Installing JIRA" href="" tab="install">
<requirements label="Requirements" href="requirements.html"/>
<guide label="Install Guide" href="install.html"/>
....
</install>
<concepts label="Concepts" tab="user">
<issues label="Issues" href="issues.html"/>
....
</concepts>
<configuring label="Configuration" href="" tab="config">
<configuration label="Configuring JIRA" href="configure.html">
....
</configuring>
<ref label="Reference Guides" tab="user">
<dashboard label="Configuring the Dashboard" href="dashboard.html"/>
....
</ref>
<misc label="Miscellaneous">
<faq label="FAQ" href="faq.html" tab="faq"/>
...
</misc>
</site>
Some features to note about this site.xml:
- The 'user' tab is used in two separate trees ('Concepts' and
'Reference Guides'), meaning only those sections will appear in the
"Use" tab.
- The 'faq' tab has only one page (see the website for the effect of
this).
- (advanced) The '' tab is special, and matches all nodes. The root
<site> node contains no tab attribute. It therefore defaults to
'', and so the front page contains links to all pages. Usually,
you'd use <site tab="home">, and call the home tab 'home', in which
case only a subset of the site's content would appear on the home
tab.
Hmm, I might as well just have written the proper docs..
Hope it's enough to get you going.
--Jeff
> is that the recommended way to do it?
>
> rday
>