+[[!meta author="spalax"]]
[[!template id=plugin name=sidebar2 author="[[Louis|spalax]]"]]
[[!tag type/chrome]]
*Claim:* The [[sidebar|plugins/sidebar]] plugin has nothing
to do with sidebars. This plugin renders some page (which happens to be named
-`sidebar`) and put the result in template variable `SIDEBAR`, in template
+`sidebar`) and put the result in template variable `SIDEBAR` of template
`page.tmpl`. But the fact that it is a sidebar, i.e. a bar appearing on the
side on the screen, is done by CSS.
The default, which gives the behaviour of the sidebar plugin, is
`global_sidebars => ["sidebar", "sidebar", "*"]`.
+*Remark: It would be more sensible to have a list of lists, as the following example, but I did not manage to do so because of [[this bug|bugs/structured_config_data_is_mangled]].*
+
+ global_sidebars => [
+ ["var1", "page1", "pagespec1"],
+ ["var2", "page2", "pagespec2"],
+ ]
+
# Improvements over sidebar plugin
-* You can add several "sidebars" to your wiki. For example, to have a sidebar, a submeno that appear only in pages documentations, and a footer, your `global_sidebars` would be:
+* You can add several "sidebars" to your wiki. For example, to have a sidebar, a submenu that appears only in documentation pages (`doc/*`), and a footer, your `global_sidebars` would be:
global_sidebars => [
"sidebar", "sidebar", "*",
2. If the page contains the [[sidebar|ikiwiki/directive/sidebar]] directive with no `content` argument, the first rule for the considered template variable is applied, disregarding the pagespec.
3. If none of the above, the first rule having its pagespec patching the current page is applied.
4. If none of the above, the variable is left empty.
+
+# Download and install
+
+Code and documentation: [[https://atelier.gresille.org/projects/gresille-ikiwiki/wiki/Sidebar2]].