navstories
Add all stories in specified locations to the navigation bar.
This very simple plugin throws all the stories to the navigation bar.
Started as a Proof-of-concept of a ConfigPlugin. By request on the mailing list.
Changed to map the stories/pages to a hierachical structure in the menu based on the permalink structure (defaults to the directory structure of the posts).
This plugin generates menus and one level of submenus (further sub-levels are mapped to first level submenus). WARNING: Support for submenus is theme-dependent.
The menu entries inserted by navstories are inserted after entries from NAVIGATION_LINKS.
Entries listed in NAVIGATION_LINKS_POST_NAVSTORIES are inserted after navstories entries.
Format of NAVIGATION_LINKS_POST_NAVSTORIES is identical to NAVIGATION_LINKS.
To include stories in the menu the permalink for the story must start with one of the strings listed in
NAVSTORIES_PATHS, other stories should be ignored by this pluging.
Sorting and display names in menu can be controlled for top-level entries via NAVSTORIES_MAPPING.
# Paths (permalink) that should be processed by navstories plugin (path starting with /<variable>/, <variable> can contain /, e.g.: stories/b NAVSTORIES_PATHS = { DEFAULT_LANG: ( 'pages', 'stories', ), } # Mapping "Toplevel in permalink" to "Visible text" # The order is as listed here, entries not listed here are included in the end, with the top level of the permalink as text NAVSTORIES_MAPPING = { DEFAULT_LANG: ( # example (remove initial #): #("b", "Boo"), #("f", "Foo"), ), } # Indention for each level deeper in a submenu, than the highest level in that submenu, the submenu is flat, so it is only the menu text there are indented NAVSTORIES_SUBMENU_INDENTION = '* ' # Static menu after dynamic navstories menu entries # Format just as NAVIGATION_LINKS, but content included after navstories entries NAVIGATION_LINKS_POST_NAVSTORIES = { DEFAULT_LANG: ( ), }
To exclude a single story from the navstories meny add the following
metadata .. hidefromnav: yes to the story.
Issues? Questions?
You can report issues with this plugin and request help via GitHub Issues.