I went ahead for now with your first (1) option. So for ORM, the left-hand "Documentation" link now becomes 3: "Documentation (5.0)", "Documentation (4.3)", "Documentation (4.2)".
Not ideal long term, but as you said, the easiest solution for now and it works. But it got me thinking that a lot of the website content is actually version specific, docs and downloads being the 2 main ones. I'd like to discuss options for this a little bit in Barcelona On Thu, Aug 20, 2015 at 4:13 AM Hardy Ferentschik <ha...@hibernate.org> wrote: > Hi, > > I am not a great expert on the templating side either, but I can tell you > how it > is put together atm. > > The left hand menu items for the different projects (About, Downloads, > Documentation, etc) > are actually generated from the site config. > > If you look into _config/site.yml, you see that each project defines a > menu section which > is in itself split between intern and extern. The menu items specified in > site.yml are > then displayed depending on the chosen project. > > The place where this is happening is > _layouts/project/project-frame.html.haml: > > {code} > %ul.nav.nav-list > -# removes index.html and then replace download.html to download/ > - current_path = page.output_path.sub(/index\.html$/, > "").sub(/\.html$/,"/") > - project_description.menu.intern.each do |menu| > -# active if path is a subpath of the menu item. The project > home has to be treated differently as every path is a subpath of home > - active = (menu.href == "/#{page.project}/" && menu.href == > current_path) || (menu.href != "/#{page.project}/" && > current_path.start_with?(menu.href)) > %li{:class => "#{(active ? "active" : "")}"} > %a{:href => "#{relative("#{menu.href}")}"} > %i{:class => "#{menu.css_class} menu-icon"} > #{menu.name} > %li.divider > - project_description.menu.extern.each do |menu| > %li > %a{:href => "#{menu.href}"} > %i{:class => "#{menu.css_class} menu-icon"} > #{menu.name} > {code} > > project_description.menu.intern.each will iterate over the intern links > for a given project whereas > project_description.menu.extern.each iterates the external links. > > So far so good. Depending on how dynamic you want all this to work you > have multiple options. > > 1) Work with the current approach and just define your different > documentation links. If you work > with the current structure you would get multiple Downloads links > pointing to the different > doc versions. This is the simplest approach and does not require any > template change at all > 2) Create a sub hash orm:menu:intern:documentation:versions (just > extending the nested structure > we already have. YAML will automatically create the nested hashes out > of this.) In the template > you would then need to handle the ORM case a bit different (eg by > checking whether the current > project is ORM). This way I could envision a single Download link which > would point to the > current docs together with a little expander icon next to it which when > clicked makes the > other documentation links visible by expanding some sort of div. I > think this would be visually > much more appealing. Obviously you need to deal with template changes > as well as HTML + CSS changes > for getting the drop out menu right. > 3) In the template check whether your current items is the ORM Download > and if so, do whatever you want. > This bypasses site.yml completely. > > Personally I think 1) is a great way to get started verify the new > approach and its navigation. Once all is > working as it should I would look into 2) since I think it would be > visually much more appealing. Maybe > Davide could help with the CSS/HTML part. I am pretty bad with this. > > Anyways, hope this points you into the right direction. > > --Hardy > > > > > > On Wed, Aug 19, 2015 at 10:52:32PM +0000, Steve Ebersole wrote: > > In regards to WEBSITE-382 > > <https://hibernate.atlassian.net/browse/WEBSITE-382>[1], I would love to > > get the "list" of version family specific doc page links into the left > nav > > ideally as another section there. Anyone able to give me some pointers > how > > to hook into the left-hand nav links are managed? > > > > I see 'bothcol.html.haml' defines 'leftcol.html.haml' and > > 'rightcol.html.haml' are defined. But I have no idea if that is the > right > > place. I have never even seen a right-hand column in use in the website. > > And I have not found any specific 'leftcol.html.haml' or > > 'rightcol.html.haml' files. > > > > [1] https://hibernate.atlassian.net/browse/WEBSITE-382 > > _______________________________________________ > > hibernate-dev mailing list > > hibernate-dev@lists.jboss.org > > https://lists.jboss.org/mailman/listinfo/hibernate-dev > _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev